Function at 0x1400516d0
Capabilities:
Access peb ldr_data
Check for time delay via gettickcount
Check os version
Empty recycle bin quietly
Empty the recycle bin
Encode data using base64
Find taskbar
Move file
Set environment variable

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], r8
mov dword [rax + 0x10], edx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
lea rbp, [rax - 0x9e8]
sub rsp, 0xac8
mov qword [rbp + 0x120], 0xfffffffffffffffe
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
lea rax, [rbp + 0x110]
test r9, r9
cmovne rax, r9
mov qword [rbp - 0x40], rax
xor edi, edi
mov qword [rax], rdi
mov rax, qword [0x14013b0f8]
mov qword [rbp - 0x48], rax
mov eax, dword gs:[0x48]
mov dword [rbp - 0x18], eax
mov rsi, rcx
mov qword [rsp + 0x60], rcx
lea ebx, [rdi + 1]
test rcx, rcx
je 0x140057e04
movsd xmm9, qword [0x1401279a8]
movsd xmm10, qword [0x1401279e0]
movsd xmm8, qword [0x1401279d8]
xorpd xmm11, xmm11
movzx eax, byte [rbp + 0x9f0]
mov dword [rbp - 0x68], eax
cmp dword [0x140143dfc], 0
je 0x1400517bf
cmp qword [0x140143de0], 0
je 0x1400517ac
mov rcx, qword [0x140143dd0]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov qword [0x140143de0], rdi
call qword [sym.imp.USER32.dll_CloseClipboard]
mov dword [0x140143dfc], edi
mov qword [0x140143dd0], rdi
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, eax
mov ecx, eax
sub ecx, dword [0x140143d4c]
mov rax, qword [0x14013b0f8]
cmp ecx, dword [rax + 0x118]
jbe 0x140051820
xor eax, eax
mov dword [rsp + 0x20], eax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x128]
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x140051812
mov eax, dword [rbp - 0x18]
cmp dword [0x1401430c0], eax
jne 0x140051812
mov edx, ebx
or ecx, 0xffffffff
call fcn.140001b80
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, eax
mov dword [0x140143d4c], eax
mov rbx, qword [rbp - 0x48]
cmp byte [rbx + 0x12c], 0
jne 0x140051857
cmp byte [rbx + 0x12e], 0
jne 0x140051857
mov eax, dword [0x140143d40]
cmp eax, 0xffffffff
jle 0x140051857
mov ecx, dword [rbx + 0x38]
cmp ecx, eax
jle 0x140051851
mov byte [rbx + 0x12c], 1
jmp 0x140051857
lea eax, [rcx + 1]
mov dword [rbx + 0x38], eax
mov rax, qword [rbx]
mov rdx, qword [0x140143d38]
cmp rax, 0xffffffffffffffff
jle 0x14005186c
cmp rdx, rax
jge 0x14005187e
mov eax, dword [rbx + 0x34]
cmp eax, 0xffffffff
jle 0x140051896
sub edi, dword [0x140143d48]
cmp edi, eax
jb 0x140051896
mov edi, 1
mov edx, edi
lea ecx, [rdi + 9]
call fcn.140001b80
mov rdx, qword [0x140143d38]
jmp 0x14005189b
mov edi, 1
cmp byte [rbx + 0x138], 0
je 0x1400518dd
mov esi, dword [rbp - 0x18]
cmp dword [0x1401430c0], esi
jne 0x1400518bd
mov edx, edi
mov ecx, 0x8000012f
call fcn.140001b80
jmp 0x1400518c8
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [rbx + 0x138], 0
jne 0x1400518a7
mov rsi, qword [rsp + 0x60]
mov rdx, qword [0x140143d38]
mov qword [0x140143818], rsi
cmp byte [rbx + 0x139], 0
je 0x140051934
movsxd rax, dword [0x1401405f8]
lea rbx, [0x140000000]
mov qword [rbx + rax*8 + 0x140600], rsi
call qword [sym.imp.KERNEL32.dll_GetTickCount]
movsxd rcx, dword [0x1401405f8]
mov dword [rbx + rcx*4 + 0x13eec0], eax
inc ecx
cmp ecx, 0x190
mov eax, 0
cmovge ecx, eax
mov dword [0x1401405f8], ecx
mov rdx, qword [0x140143d38]
cmp qword [0x140141ff0], 0xffffffffffffffff
je 0x140051952
cmp byte [rsi], 0x6b
je 0x140051952
mov rcx, rsi
call fcn.140008230
mov rdx, qword [0x140143d38]
movzx eax, byte [rsi]
cmp al, 1
je 0x14005198b
cmp al, 0x6b
je 0x14005198b
cmp al, 0x74
je 0x14005198b
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, qword [rbp + 0xa00]
mov rcx, rsi
call fcn.1400af9f0
mov dword [rsp + 0x70], eax
cmp eax, 1
jne 0x140057ab3
mov rdx, qword [0x140143d38]
movzx ebx, byte [rsi]
mov dword [rbp - 0x78], ebx
cmp bl, 9
jb 0x140051b26
cmp bl, 0x20
ja 0x140051b26
inc rdx
mov qword [0x140143d38], rdx
mov rcx, rsi
call fcn.140058300
cmp eax, 3
jne 0x140051a7a
mov rax, qword [rsi + 0x20]
cmp byte [rax], 0x75
jne 0x1400519fe
nop word [rax + rax]
lea r9, [rbp - 0x70]
mov r8, qword [rbp + 0xa00]
mov edx, 2
mov rcx, qword [rax + 0x20]
call fcn.1400516d0
mov edx, eax
mov dword [rsp + 0x70], eax
mov rax, qword [rsi + 0x20]
mov rcx, qword [rbp - 0x70]
cmp rcx, rax
je 0x1400519d0
jmp 0x140051a20
lea r9, [rbp - 0x70]
mov r8, qword [rbp + 0xa00]
mov edx, 3
mov rcx, rax
call fcn.1400516d0
mov edx, eax
mov dword [rsp + 0x70], eax
mov rcx, qword [rbp - 0x70]
cmp rcx, rsi
je 0x1400579ab
cmp dword [rbp + 0x9f8], 3
je 0x1400579ce
cmp edx, 1
jne 0x1400579ce
test rcx, rcx
je 0x140051a5f
mov rax, qword [rsi + 0x30]
cmp qword [rcx + 0x30], rax
jne 0x1400579c0
mov rsi, rcx
mov qword [rsp + 0x60], rcx
jmp 0x1400579ab
mov rsi, qword [rsi + 0x28]
mov qword [rsp + 0x60], rsi
cmp byte [rsi], 0x21
jne 0x1400579ab
mov rsi, qword [rsi + 0x28]
jmp 0x140051b8b
mov rsi, qword [rsi + 0x28]
mov qword [rsp + 0x60], rsi
cmp byte [rsi], 0x21
jne 0x140051b14
mov rax, qword [rsi + 0x20]
cmp byte [rax], 0x75
jne 0x140051ace
nop word [rax + rax]
lea r9, [rbp - 0x70]
mov r8, qword [rbp + 0xa00]
mov edx, 2
mov rcx, qword [rax + 0x20]
call fcn.1400516d0
mov edx, eax
mov dword [rsp + 0x70], eax
mov rax, qword [rsi + 0x20]
mov rcx, qword [rbp - 0x70]
cmp rcx, rax
je 0x140051aa0
jmp 0x140051af0
lea r9, [rbp - 0x70]
mov r8, qword [rbp + 0xa00]
mov edx, 3
mov rcx, rax
call fcn.1400516d0
mov edx, eax
mov dword [rsp + 0x70], eax
mov rcx, qword [rbp - 0x70]
cmp dword [rbp + 0x9f8], 3
je 0x1400579ce
cmp edx, 1
jne 0x1400579ce
test rcx, rcx
je 0x140052895
jmp 0x140051a44
cmp dword [rbp + 0x9f8], 3
je 0x1400579c7
jmp 0x1400579ab
movzx eax, bl
add eax, 0xffffffa0
lea r9, [0x140000000]
cmp eax, 0x80
ja case.0x140051b54.112
cdqe
movzx eax, byte [r9 + rax + 0x57e78]
mov ecx, dword [r9 + rax*4 + 0x57e34]
add rcx, r9
jmp rcx
mov rcx, rsi
call fcn.140058300
cmp eax, 3
je 0x1400579dc
jmp 0x140051b7a
mov rcx, rsi
call fcn.140058300
cmp eax, 3
je case.0x140051b54.103
cmp dword [rbp + 0x9f8], 3
je 0x140057a0a
mov rsi, qword [rsi + 0x20]
mov qword [rsp + 0x60], rsi
jmp 0x1400579ab
inc rdx
mov qword [0x140143d38], rdx
mov rdx, qword [rsi + 0x28]
test rdx, rdx
je 0x140051bc3
mov qword [rbp - 0x20], rdx
xor eax, eax
mov edi, eax
cmp qword [rsi + 0x10], 1
sete dil
mov rbx, qword [rbp - 0x48]
test edi, edi
je 0x140051c2a
jmp 0x140051c0d
mov dl, 1
mov rcx, rsi
call fcn.140086820
mov rdx, rax
mov qword [rbp - 0x20], rax
test rax, rax
je 0x140057a51
mov rbx, qword [rbp - 0x48]
cmp qword [rbx + 0xd8], 0
je 0x140051c26
mov rax, qword [rax + 0x10]
mov rcx, qword [rax + 0x30]
test rcx, rcx
je 0x140051c0d
cmp qword [rcx + 0x10], 1
jne 0x140051c04
cmp byte [rcx], 0x75
je 0x140051c26
mov rcx, qword [rcx + 0x30]
test rcx, rcx
jne 0x140051bf8
mov rax, qword [rbx + 0xd8]
mov qword [rbx + 0xe0], rax
xor eax, eax
mov qword [rbx + 0xd8], rax
jmp 0x140051c2a
xor eax, eax
mov edi, eax
mov rcx, rdx
call fcn.140001940
mov edx, eax
mov dword [rsp + 0x70], eax
test edi, edi
je 0x140051c53
mov rax, qword [rbx + 0xe0]
mov qword [rbx + 0xd8], rax
xor eax, eax
mov qword [rbx + 0xe0], rax
test edx, edx
je 0x1400579d5
cmp edx, 8
je 0x1400579d5
cmp dword [rbp + 0x9f8], 3
je 0x140057a14
mov rsi, qword [rsi + 0x20]
mov qword [rsp + 0x60], rsi
jmp 0x1400579ab
inc rdx
mov qword [0x140143d38], rdx
mov rcx, qword [rsi + 0x28]
mov qword [rbp - 0x20], rcx
test rcx, rcx
jne 0x140051cb0
mov dl, 1
mov rcx, rsi
call fcn.140086820
mov rcx, rax
mov qword [rbp - 0x20], rax
test rax, rax
je 0x140057a51
mov rax, qword [rbp - 0x48]
mov qword [rax + 0xe8], rcx
cmp dword [rbp + 0x9f8], 3
je 0x140057a26
mov rdx, qword [rcx + 0x10]
mov rax, qword [rdx + 0x30]
cmp qword [rsi + 0x30], rax
jne 0x140057a26
mov rsi, rdx
mov qword [rsp + 0x60], rdx
jmp 0x1400579ab
inc rdx
mov qword [0x140143d38], rdx
mov rdi, qword [rbp + 0x9f0]
mov rdi, qword [rdi + 0x10]
test rdi, rdi
jne 0x140051d40
mov rbx, qword [0x14013f5a0]
cmp word [rbx], di
jne 0x140051d13
xor edx, edx
mov edi, edx
jmp 0x140051d42
mov rdi, qword [0x140143170]
test rdi, rdi
je 0x140051d3a
nop
mov rdx, rbx
mov rcx, qword [rdi + 8]
call qword [sym.imp.MSVCR100.dll__wcsicmp]
test eax, eax
je 0x140051d40
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x140051d20
xor edx, edx
mov edi, edx
jmp 0x140051d42
xor edx, edx
mov dword [rsp + 0x70], 1
mov ebx, edx
test rdi, rdi
je 0x140051e43
mov rcx, qword [0x14013f5a8]
cmp word [rcx], 0
je 0x140051d77
lea rdx, [0x14010805c]
call qword [sym.imp.MSVCR100.dll__wcsicmp]
test eax, eax
jne 0x140051d77
mov dl, 1
jmp 0x140051d79
xor edx, edx
lea r9, [rbp - 0x20]
xor r8d, r8d
mov rcx, rdi
call fcn.1400eafe0
mov ebx, eax
mov r8, qword [rbp - 0x20]
test r8, r8
je 0x140051e43
mov rdx, qword [r8 + 0x10]
mov rcx, qword [rdx + 0x30]
test rcx, rcx
je 0x140051dbc
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x140057a38
cmp rcx, rax
je 0x140051dbc
mov rax, qword [rax + 0x30]
jmp 0x140051da8
mov r9, qword [rbp - 0x48]
mov rcx, qword [r9 + 0xd8]
test rcx, rcx
je 0x140051e01
mov rax, qword [rdx + 0x30]
test rax, rax
je 0x140051dea
cmp qword [rax + 0x10], 1
jne 0x140051de1
cmp byte [rax], 0x75
je 0x140051e01
mov rax, qword [rax + 0x30]
test rax, rax
jne 0x140051dd5
mov edi, 1
mov qword [r9 + 0xe0], rcx
xor eax, eax
mov qword [r9 + 0xd8], rax
jmp 0x140051e05
xor eax, eax
mov edi, eax
mov rcx, r8
call fcn.140001940
mov edx, eax
mov dword [rsp + 0x70], eax
test edi, edi
je 0x140051e32
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx + 0xe0]
mov qword [rcx + 0xd8], rax
xor eax, eax
mov qword [rcx + 0xe0], rax
test edx, edx
je 0x1400579d5
cmp edx, 8
je 0x1400579d5
test ebx, ebx
sete dl
mov rcx, qword [rbp + 0x9f0]
call fcn.14005e3f0
cmp dword [rbp + 0x9f8], 3
je 0x140057a58
mov rsi, qword [rsi + 0x20]
mov qword [rsp + 0x60], rsi
jmp 0x1400579ab
mov rdi, qword [rsi + 0x10]
mov rax, rdi
dec rax
je 0x140051ec6
sub rax, 3
je 0x140051ea9
cmp rax, 5
jne 0x1400520bb
xor r9d, r9d
xor r8d, r8d
lea edx, [rax - 4]
mov rcx, qword [0x14013f5a8]
call fcn.1400306b0
mov qword [rbp - 0x30], rax
jmp 0x1400520db
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x14013f5a0]
call fcn.1400306b0
mov qword [rbp - 0x30], rax
jmp 0x140052101
movzx ecx, byte [rsi + 1]
test ecx, ecx
je 0x14005217c
dec ecx
je 0x140051f0f
lea rdx, str.Read
mov rcx, qword [0x14013f5a0]
call qword [sym.imp.MSVCR100.dll__wcsicmp]
test eax, eax
jne 0x140051ef6
lea edi, [rax + 5]
jmp 0x140052181
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x14013f5a0]
call fcn.1400306b0
jmp 0x1400520a7
mov rbx, qword [0x14013f5a0]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140051f25
cmp ax, 9
jne 0x140051f2b
add rbx, 2
jmp 0x140051f16
movzx eax, word [rbx]
test ax, ax
je 0x14005217c
cmp ax, 0x2d
je 0x140051f43
cmp ax, 0x2b
jne 0x140051f47
add rbx, 2
cmp word [rbx], 0x30
jne 0x140051f78
movzx eax, word [rbx + 2]
cmp ax, 0x78
je 0x140051f5d
cmp ax, 0x58
jne 0x140051f78
movzx ecx, word [rbx + 4]
call qword [sym.imp.MSVCR100.dll_isxdigit]
test eax, eax
je 0x140051f78
mov eax, 1
add rbx, 4
xor edx, edx
jmp 0x140051f7c
xor edx, edx
mov eax, edx
mov esi, edx
mov ecx, edx
mov dword [rsp + 0x68], edx
movzx edi, word [rbx]
cdqe
mov qword [rsp + 0x78], rax
cmp edi, 0x20
je 0x140052060
cmp edi, 9
je 0x14005205d
test edi, edi
je 0x140052059
cmp edi, 0x2e
jne 0x140051fc6
test esi, esi
jne 0x14005208e
test rax, rax
jne 0x14005208e
lea esi, [rdi - 0x2d]
jmp 0x140052048
test rax, rax
je 0x140051fe3
movzx ecx, di
call qword [sym.imp.MSVCR100.dll_iswxdigit]
xor edx, edx
mov ecx, edx
test eax, eax
sete cl
test ecx, ecx
je 0x14005203a
jmp 0x140051feb
lea eax, [rdi - 0x30]
cmp eax, 9
jbe 0x14005203a
movzx ecx, di
call fcn.140016bd0
cmp ax, 0x45
jne 0x14005208e
test esi, esi
je 0x14005208e
cmp dword [rsp + 0x68], 0
je 0x14005208e
movzx eax, word [rbx + 2]
cmp ax, 0x2d
je 0x140052020
cmp ax, 0x2b
jne 0x140052024
add rbx, 2
movzx eax, word [rbx + 2]
cmp ax, 0x30
jb 0x14005208e
cmp ax, 0x39
ja 0x14005208e
mov ecx, dword [rsp + 0x68]
jmp 0x140052043
mov ecx, 1
mov dword [rsp + 0x68], ecx
mov rax, qword [rsp + 0x78]
add rbx, 2
movzx edi, word [rbx]
cmp edi, 0x20
je 0x14005205d
jmp 0x140051f97
xor edx, edx
jmp 0x14005207b
xor edx, edx
nop
movzx eax, word [rbx]
cmp ax, 0x20
je 0x14005206f
cmp ax, 9
jne 0x140052075
add rbx, 2
jmp 0x140052060
cmp word [rbx], 0
jne 0x14005208e
test ecx, ecx
je 0x14005208e
mov eax, edx
test esi, esi
setne al
inc eax
jne 0x140052177
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x14013f5a0]
call fcn.1400306b0
mov rsi, qword [rsp + 0x60]
mov qword [rbp - 0x30], rax
xor eax, eax
mov edi, eax
cmp qword [rbp - 0x30], rax
setne dil
add rdi, 3
cmp rdi, 3
je 0x14005213b
cmp rdi, 4
je 0x140052101
cmp rdi, 8
jbe 0x140052181
cmp rdi, 0xa
ja 0x140052181
mov rcx, qword [0x14013f5b0]
call fcn.140033150
mov r9d, eax
mov dword [rbp - 0x58], eax
shr eax, 2
and al, 1
mov dword [rbp - 0x68], eax
je 0x140052130
and r9d, 0xfffffffb
mov dword [rbp - 0x58], r9d
jmp 0x140052130
mov rcx, qword [0x14013f5b0]
call fcn.1400330e0
mov r9d, eax
mov dword [rbp - 0x58], eax
mov rax, qword [0x14013f5b8]
cmp word [rax], 0x31
jne 0x14005212b
cmp word [rax + 2], 0
jne 0x14005212b
mov al, 1
jmp 0x14005212d
xor al, al
mov dword [rbp - 0x68], eax
test r9d, r9d
je 0x140057a6c
jmp 0x140052185
mov rcx, qword [0x14013f5a8]
call fcn.1400330e0
mov r9d, eax
mov dword [rbp - 0x58], eax
test eax, eax
je 0x140057a8a
mov rax, qword [0x14013f5b0]
cmp word [rax], 0x31
jne 0x140052170
cmp word [rax + 2], 0
jne 0x140052170
mov cl, 1
mov dword [rbp - 0x68], ecx
jmp 0x140052188
xor cl, cl
mov dword [rbp - 0x68], ecx
jmp 0x140052188
mov rsi, qword [rsp + 0x60]
mov edi, 2
mov r9d, dword [rbp - 0x58]
mov ecx, dword [rbp - 0x68]
mov byte [rbp + 0xa08], 0
xor r10d, r10d
mov qword [rbp - 0x70], r10
mov rsi, qword [rsi + 0x28]
cmp byte [rsi], 0x6c
jne 0x1400521a8
mov rbx, rsi
mov rsi, qword [rsi + 0x20]
jmp 0x1400521ab
mov rbx, r10
mov rdx, qword [rbp - 0x48]
mov rax, qword [rdx + 8]
mov qword [rbp - 0x60], rax
mov rax, qword [rdx + 0x10]
mov qword [rsp + 0x78], rax
mov rax, qword [rdx + 0x18]
mov qword [rbp - 0x78], rax
mov rax, qword [rdx + 0x20]
mov qword [rbp - 0x10], rax
mov rax, qword [rdx + 0x28]
mov qword [rbp - 0x50], rax
mov rax, qword [rdx + 8]
cmp rdi, 8
mov edx, 1
cmovne rax, rdx
mov r8, qword [rbp - 0x48]
mov qword [r8 + 8], rax
lea rax, [rdi - 2]
cmp rax, 8
ja case.default.0x140052211
lea r11, [0x140000000]
mov eax, dword [r11 + rax*4 + 0x57efc]
add rax, r11
jmp rax
mov rdi, qword [rsp + 0x60]
cmp byte [rdi + 1], r10b
jbe 0x14005222c
xor edx, edx
mov rcx, rdi
call fcn.14004cc90
xor cl, cl
jmp 0x140052232
mov rax, r10
movzx ecx, dl
mov byte [rsp + 0x30], cl
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa08]
mov rdx, qword [rbp + 0xa00]
mov rcx, rdi
call fcn.14005ada0
mov dword [rsp + 0x70], eax
mov edx, 1
jmp 0x1400525d0
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa08]
mov rdx, qword [rbp + 0xa00]
mov rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.14005af60
mov dword [rsp + 0x70], eax
mov edx, 1
jmp 0x1400525d0
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa08]
mov rdx, qword [rbp + 0xa00]
mov rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.14005b190
mov dword [rsp + 0x70], eax
mov edx, 1
jmp 0x1400525d0
lea rdx, [0x1401207d8]
mov rcx, qword [0x14013f5b0]
call qword [sym.imp.MSVCR100.dll__wcsicmp]
test eax, eax
mov rax, qword [0x14013f5a8]
mov rdi, qword [rsp + 0x60]
je 0x140052327
cmp word [rax], 0
jne 0x1400522fa
mov edx, 1
mov eax, edx
jmp 0x14005235a
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa08]
mov rdx, qword [rbp + 0xa00]
mov rcx, rdi
call fcn.14005c270
mov edx, 1
mov dword [rsp + 0x70], eax
jmp 0x1400525d0
cmp word [rax], 0
jne 0x140052336
mov edx, 1
mov eax, edx
jmp 0x14005235a
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa08]
mov rdx, qword [rbp + 0xa00]
mov rcx, rdi
call fcn.14005c6f0
mov edx, 1
mov dword [rsp + 0x70], eax
jmp 0x1400525d0
lea rax, vtable.TextStream.0
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], r10
mov dword [rbp + 0x70], r10d
mov dword [rbp + 0x74], 0xffffffff
mov qword [rbp + 0x90], r10
mov qword [rbp + 0x98], r10
mov ecx, dword [0x140143fb8]
cmp ecx, 0xffffffff
je 0x1400523ba
mov dword [rbp + 0x74], ecx
lea rdx, [rbp + 0x78]
call qword [sym.imp.KERNEL32.dll_GetCPInfo]
movzx ecx, byte [rbp + 0x7e]
test eax, eax
mov r10d, 0
cmove ecx, r10d
mov byte [rbp + 0x7e], cl
mov r8, qword [rbp - 0x48]
lea rax, vtable.TextFile.0
mov qword [rbp + 0x60], rax
mov qword [rbp + 0xa0], 0xffffffffffffffff
mov rdx, qword [0x14013f5a8]
cmp word [rdx], 0
je 0x1400524a3
mov edi, dword [r8 + 0x13c]
btr edi, 0x1f
mov dword [rsp + 0x68], 0x30c
mov dword [rbp + 0x6c], r10d
lea r8, [rsp + 0x68]
lea rcx, [rbp + 0x60]
call qword [0x140103ac0]
test al, al
je 0x1400524a3
mov r8d, edi
lea rdx, [rsp + 0x68]
lea rcx, [rbp + 0x60]
call fcn.1400dde40
test al, al
je 0x1400524a3
mov rax, qword [0x14013f5b0]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x60]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa08]
mov rdx, qword [rbp + 0xa00]
mov rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.14005cb50
mov dword [rsp + 0x70], eax
mov r8d, dword [rbp + 0x6c]
test r8d, r8d
je 0x14005248d
cmp qword [rbp + 0x90], 0
jne 0x14005248d
mov rdx, qword [rbp + 0x98]
lea rcx, [rbp + 0x60]
mov rax, qword [rbp + 0x60]
call qword [rax + 0x20]
xor edx, edx
mov dword [rbp + 0x6c], edx
jmp 0x14005248f
xor edx, edx
mov word [rbp + 0x8c], dx
lea rcx, [rbp + 0x60]
mov rax, qword [rbp + 0x60]
call qword [rax + reloc.WSOCK32.dll_recv]
jmp 0x1400524b0
mov dword [rsp + 0x70], 1
mov rdi, qword [rsp + 0x60]
lea rcx, [rbp + 0x60]
call fcn.1400052d0
mov edx, 1
jmp 0x1400525d0
mov rax, qword [0x14013f5a8]
cmp rdi, 3
cmove rax, qword [0x14013f5a0]
mov qword [rsp + 0x38], rax
mov byte [rsp + 0x30], cl
mov dword [rsp + 0x28], r9d
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa08]
mov rdx, qword [rbp + 0xa00]
mov rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.14005b7a0
mov dword [rsp + 0x70], eax
mov edx, 1
jmp 0x1400525d0
lea r9, [rbp - 0x64]
cmp rdi, 4
jne 0x140052544
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x14013f5a0]
call fcn.1400306b0
mov rdi, rax
mov rax, qword [0x14013f5a8]
mov qword [rbp + 0xc0], rax
jmp 0x140052561
lea r8, [rbp + 0xc0]
mov rcx, qword [0x14013f5a8]
call fcn.1400306b0
mov rdi, rax
mov rax, qword [rbp + 0xc0]
test rdi, rdi
je 0x1400525c2
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rdi
mov rax, qword [rbp - 0x30]
mov qword [rsp + 0x38], rax
mov eax, dword [rbp - 0x68]
mov byte [rsp + 0x30], al
mov eax, dword [rbp - 0x58]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa08]
mov rdx, qword [rbp + 0xa00]
mov rcx, qword [rsp + 0x60]
call fcn.14005bd60
mov dword [rsp + 0x70], eax
cmp byte [rbp - 0x64], 0
je 0x1400525bb
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov edx, 1
jmp case.default.0x140052211
mov edx, 1
mov dword [rsp + 0x70], edx
mov rdi, qword [rsp + 0x60]
mov rax, qword [rbp - 0x60]
mov rbx, qword [rbp - 0x48]
mov qword [rbx + 8], rax
mov rax, qword [rsp + 0x78]
mov qword [rbx + 0x10], rax
mov rax, qword [rbp - 0x78]
mov qword [rbx + 0x18], rax
mov rax, qword [rbp - 0x10]
mov qword [rbx + 0x20], rax
mov rax, qword [rbp - 0x50]
mov qword [rbx + 0x28], rax
mov eax, dword [rsp + 0x70]
test eax, eax
je 0x140057ab3
cmp eax, 7
je 0x140057ab3
cmp eax, 8
je 0x140057ab3
cmp byte [rbp + 0xa08], 0
jne 0x1400579a6
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x14005264c
mov rax, qword [rdi + 0x30]
cmp qword [rcx + 0x30], rax
jne 0x140057aa8
mov rsi, rcx
mov qword [rsp + 0x60], rcx
jmp 0x1400579ab
cmp dword [rbp + 0x9f8], 3
je 0x1400579d5
mov qword [rsp + 0x60], rsi
jmp 0x1400579ab
mov rdx, qword [rbp - 0x48]
mov esi, dword [rdx + 0x140]
mov dword [rsp + 0x68], esi
cmp bl, 0x72
jne 0x1400526e1
mov rcx, qword [0x14013f500]
mov rdi, qword [rdx + 0x148]
xor eax, eax
mov qword [rdx + 0x148], rax
test rcx, rcx
je 0x1400526a0
mov rdx, rdi
call fcn.1400e6100
mov dword [rsp + 0x70], eax
jmp 0x1400526a8
mov dword [rsp + 0x70], 1
cmp dword [rdi + 0x10], 6
jne 0x1400526b7
mov rcx, qword [rdi]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x1400526c6
call qword [sym.imp.MSVCR100.dll_free]
mov rcx, rdi
call qword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void____ptr64_]
cmp dword [rsp + 0x70], 0
je 0x140057a51
mov r10, qword [rsp + 0x60]
jmp 0x140052703
mov ecx, esi
or ecx, 1
mov dword [rdx + 0x140], ecx
mov r10, qword [rsp + 0x60]
mov rax, qword [r10 + 0x28]
cmp byte [rax], 0x73
je 0x140052703
or ecx, 2
mov dword [rdx + 0x140], ecx
xor eax, eax
mov qword [rbp - 0x70], rax
mov rdi, qword [r10 + 0x20]
cmp byte [rdi], 0x75
jne 0x14005274f
mov rsi, qword [rsp + 0x60]
mov rbx, qword [rbp + 0xa00]
nop
lea r9, [rbp - 0x70]
mov r8, rbx
mov edx, 2
mov rcx, qword [rdi + 0x20]
call fcn.1400516d0
mov dword [rsp + 0x70], eax
mov rdi, qword [rsi + 0x20]
mov rcx, qword [rbp - 0x70]
cmp rcx, rdi
je 0x140052720
mov ebx, dword [rbp - 0x78]
mov esi, dword [rsp + 0x68]
jmp 0x14005276f
lea r9, [rbp - 0x70]
mov r8, qword [rbp + 0xa00]
mov edx, 3
mov rcx, rdi
call fcn.1400516d0
mov dword [rsp + 0x70], eax
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rsp + 0x60]
mov rdx, qword [rdx + 0x28]
mov qword [rsp + 0x60], rdx
cmp bl, 0x71
jne 0x1400527e4
mov r8, qword [rbp - 0x48]
mov dword [r8 + 0x140], esi
xor dl, dl
mov rsi, qword [rsp + 0x60]
cmp byte [rsi], 0x72
jne 0x1400527b2
mov dl, 1
cmp qword [r8 + 0x148], 0
jne 0x1400579ab
mov rsi, qword [rsi + 0x28]
mov qword [rsp + 0x60], rsi
cmp byte [rsi], 0x73
je 0x1400527f5
test dl, dl
jne 0x140052854
cmp qword [r8 + 0x148], 0
je 0x140052854
lea rcx, [r8 + 0x148]
call fcn.140060080
mov eax, 1
mov dword [rsp + 0x70], eax
jmp 0x140052850
mov rsi, rdx
cmp bl, 0x72
jne 0x140052854
cmp byte [rdx], 0x73
jne 0x140052854
mov r8, qword [rbp - 0x48]
cmp eax, 1
jne 0x140052803
test rcx, rcx
je 0x1400579ab
mov rdi, qword [r8 + 0x148]
xor eax, eax
mov qword [r8 + 0x148], rax
lea r9, [rbp + 0xd8]
xor r8d, r8d
lea edx, [rax + 3]
mov rcx, rsi
call fcn.1400516d0
mov ebx, eax
cmp eax, 1
jne 0x140057abc
cmp qword [rbp + 0xd8], 0
jne 0x140057abc
mov rax, qword [rbp - 0x48]
mov qword [rax + 0x148], rdi
mov eax, dword [rsp + 0x70]
mov rcx, qword [rbp - 0x70]
cmp dword [rbp + 0x9f8], 3
je 0x140057b2c
cmp eax, 1
jne 0x140057b2c
test rcx, rcx
je 0x1400579ab
mov rax, qword [rsi + 0x30]
cmp qword [rcx + 0x30], rax
jne 0x140057b1b
mov rsi, rcx
mov qword [rsp + 0x60], rcx
jmp 0x1400579ab
cmp qword [rsi + 0x10], 1
jne 0x1400528a3
mov rsi, qword [rsi + 0x28]
mov qword [rsp + 0x60], rsi
jmp 0x1400579ab
lea r9, [rbp - 0x70]
mov r8, qword [rbp + 0xa00]
mov edx, 2
mov rcx, qword [rsi + 0x20]
call fcn.1400516d0
mov dword [rsp + 0x70], eax
mov rcx, qword [rbp - 0x70]
cmp rcx, rsi
je 0x1400579ab
cmp dword [rbp + 0x9f8], 3
je 0x140057b2c
cmp eax, 1
jne 0x140057b2c
test rcx, rcx
je 0x140052895
mov rax, qword [rcx + 0x30]
cmp qword [rsi + 0x30], rax
jmp 0x140051a4c
inc rdx
mov qword [0x140143d38], rdx
mov r10, qword [0x14013f500]
mov qword [rsp + 0x78], r10
mov rsi, qword [0x14013b0f8]
mov qword [rbp - 0x50], rsi
mov ebx, dword gs:[0x48]
mov r8, qword [rsp + 0x60]
movzx edi, byte [r8]
lea eax, [rdi - 1]
cmp eax, 0xe1
ja case.0x140052942.8
cdqe
mov ecx, dword [r9 + rax*4 + 0x57f20]
add rcx, r9
jmp rcx
mov rsi, r8
mov rcx, r8
call fcn.1400791d0
jmp 0x140057986
mov rsi, qword [0x14013f5a8]
cmp byte [r8 + 1], 1
jbe 0x140052a12
mov rax, qword [r8 + 8]
cmp byte [rax + 0x21], 0
je 0x14005297d
mov ebx, 1
mov rsi, r8
jmp 0x140057988
mov rdx, qword [rax + 0x38]
test rdx, rdx
je 0x1400529a3
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rdx, qword [rdx]
mov rcx, r10
call fcn.140001090
mov ebx, 1
mov rsi, qword [rsp + 0x60]
jmp 0x140057988
mov rdx, qword [0x14013f508]
test rdx, rdx
je 0x140052a12
cmp word [rsi], 0
jne 0x140052a12
movzx eax, byte [rdx + 0x23]
test al, al
jne 0x1400529c5
mov rax, qword [rdx + 0x10]
movzx eax, byte [rax + 0x23]
movzx ecx, al
dec ecx
je 0x140052a00
cmp ecx, 2
jne 0x140052a12
movzx eax, byte [r10 + 0x23]
cmp al, cl
jne 0x1400529df
lea ebx, [rcx - 1]
jmp 0x1400529f6
test al, al
jne 0x1400529e7
mov r10, qword [r10 + 0x10]
xor r8d, r8d
xor edx, edx
mov rcx, r10
call fcn.1400e67c0
mov ebx, eax
mov rsi, qword [rsp + 0x60]
jmp 0x140057988
mov rcx, r10
call fcn.1400e5f70
mov rsi, qword [rsp + 0x60]
jmp 0x140057986
movzx edx, byte [r10 + 0x23]
test dl, dl
jne 0x140052a3a
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, rsi
mov rcx, qword [r10 + 0x10]
call fcn.1400e6e20
mov ebx, eax
jmp 0x140052d1f
mov r8b, 1
lea r11, [0x1401035ac]
test rsi, rsi
jne 0x140052a55
xor r8b, r8b
xor ecx, ecx
mov ebx, ecx
mov rsi, r11
jmp 0x140052a79
cmp qword [r10 + 8], rsi
jne 0x140052a64
mov rbx, qword [r10 + 0x10]
shr rbx, 1
jmp 0x140052a77
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rsi
repne scasw ax, word [rdi]
not rcx
lea rbx, [rcx - 1]
xor ecx, ecx
lea rax, [rbx + 1]
lea rdi, [rax + rax]
cmp dl, 2
jne 0x140052a98
mov rdx, rbx
mov rcx, rsi
call fcn.140006bc0
mov ebx, eax
jmp 0x140052d1f
mov r9, qword [0x14013b0d0]
cmp rdi, r9
jbe 0x140052ac7
cmp rdi, qword [r10 + 0x18]
jbe 0x140052ac7
mov r8, r11
lea rdx, [0x140124720]
lea rcx, [0x140143150]
call fcn.14005f7b0
mov ebx, eax
jmp 0x140052d1f
cmp rax, 2
jae 0x140052ae8
mov edx, ecx
test r8b, r8b
setne dl
add edx, 2
xor r8d, r8d
mov rcx, r10
call fcn.1400e74d0
jmp 0x140052d1a
movzx eax, byte [r10 + 0x21]
test al, 2
je 0x140052b0c
and al, 0x3d
mov byte [r10 + 0x21], al
mov rcx, qword [r10]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r9, qword [0x14013b0d0]
mov r10, qword [rsp + 0x78]
and byte [r10 + 0x21], 0x82
mov r8, qword [r10 + 0x18]
cmp rdi, r8
jbe 0x140052ced
movzx ecx, byte [r10 + 0x20]
movzx eax, cl
cmp cl, 1
jbe 0x140052b38
cmp al, 2
je 0x140052b8a
mov rax, qword [rbp + 0x58]
jmp 0x140052c8c
cmp rdi, 0x80
ja 0x140052b8a
cmp rdi, 8
ja 0x140052b4e
mov eax, 8
jmp 0x140052b5f
mov eax, 0x80
cmp rdi, 0x10
mov ecx, reloc.WSOCK32.dll_recv
cmovbe eax, ecx
mov qword [rbp + 0x18], rax
mov rcx, rax
call fcn.1400dd290
mov qword [rbp + 0x58], rax
test rax, rax
jne 0x140052b7b
mov ebx, eax
jmp 0x140052d1f
mov r10, qword [rsp + 0x78]
mov byte [r10 + 0x20], 1
jmp 0x140052c8c
cmp rdi, 0x20
jae 0x140052b9b
mov r11d, SafeArrayAllocDescriptor
jmp 0x140052c40
cmp rdi, 0x208
jae 0x140052baf
mov r11d, 0x208
jmp 0x140052c40
cmp rdi, 0x50000
jae 0x140052bfc
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x140052bcb
addsd xmm0, xmm9
mulsd xmm0, xmm10
xor eax, eax
comisd xmm0, xmm8
jbe 0x140052bf2
subsd xmm0, xmm8
comisd xmm0, xmm8
jae 0x140052bf2
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r11, xmm0
add r11, rax
jmp 0x140052c40
cmp rdi, 0x320000
jae 0x140052c0e
lea r11, [rdi + 0x8000]
jmp 0x140052c40
cmp rdi, 0xc80000
jae 0x140052c39
mov r11, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r11, rdx
shr r11, 1
add r11, rdx
shr r11, 6
add r11, rdi
jmp 0x140052c40
lea r11, [rdi + 0x20000]
cmp r11, r9
cmova r11, r9
mov qword [rbp + 0x18], r11
cmp cl, 2
jne 0x140052c68
test r8, r8
je 0x140052c68
mov dil, 1
mov rcx, qword [r10 + 8]
call qword [sym.imp.MSVCR100.dll_free]
mov r11, qword [rbp + 0x18]
jmp 0x140052c6b
xor dil, dil
test r11, r11
js 0x140052c9f
mov rcx, r11
call qword [sym.imp.MSVCR100.dll_malloc]
mov qword [rbp + 0x58], rax
test rax, rax
je 0x140052c9f
mov r10, qword [rsp + 0x78]
mov byte [r10 + 0x20], 2
mov qword [r10 + 8], rax
mov rax, qword [rbp + 0x18]
mov qword [r10 + 0x18], rax
and byte [r10 + 0x21], 0x7f
jmp 0x140052ced
xor edx, edx
test dil, dil
je 0x140052cbc
mov rax, qword [rsp + 0x78]
mov qword [rax + 0x18], rdx
lea rcx, [0x140141fa8]
mov qword [rax + 8], rcx
jmp 0x140052ccb
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + 8]
mov word [rax], dx
mov rax, rcx
mov qword [rax + 0x10], rdx
lea r8, [0x1401035ac]
lea rdx, str.Out_of_memory.
lea rcx, [0x140143150]
call fcn.14005f7b0
mov ebx, eax
jmp 0x140052d1f
mov rcx, qword [r10 + 8]
cmp rcx, rsi
je 0x140052d08
lea r8, [rbx + rbx]
mov rdx, rsi
call qword [sym.imp.MSVCR100.dll_memmove]
mov r10, qword [rsp + 0x78]
lea rcx, [rbx + rbx]
mov rax, qword [r10 + 8]
xor edx, edx
mov word [rcx + rax], dx
mov qword [r10 + 0x10], rcx
mov ebx, 1
mov rsi, qword [rsp + 0x60]
jmp 0x140057988
mov rax, qword [r8 + 8]
cmp qword [rax + 0x38], 0
je 0x140052d4e
cmp byte [rax + 0x21], 0
jne 0x140052d4e
mov eax, 1
mov dword [rsp + 0x68], eax
mov edi, eax
xor ecx, ecx
mov esi, ecx
jmp 0x140052edb
xor r9d, r9d
mov dword [rsp + 0x68], r9d
mov rbx, qword [0x14013f5a8]
mov rcx, qword [0x14013f508]
mov qword [rbp - 0x60], rcx
test rcx, rcx
je 0x140052d9d
cmp word [rbx], r9w
jne 0x140052d9d
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x140052d83
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x140052d9d
test rcx, rcx
je 0x140052da1
mov edx, 1
call fcn.14002fa70
mov edi, eax
jmp 0x140052ecd
mov qword [rbp - 0x60], r9
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140052db0
cmp ax, 9
jne 0x140052db6
add rbx, 2
jmp 0x140052da1
movzx eax, word [rbx]
test ax, ax
jne 0x140052dc6
mov edi, r9d
jmp 0x140052ed2
cmp ax, 0x2d
je 0x140052dd2
cmp ax, 0x2b
jne 0x140052dd6
add rbx, 2
cmp word [rbx], 0x30
jne 0x140052e0f
movzx eax, word [rbx + 2]
cmp ax, 0x78
je 0x140052dec
cmp ax, 0x58
jne 0x140052e0f
movzx ecx, word [rbx + 4]
call qword [sym.imp.MSVCR100.dll_isxdigit]
test eax, eax
je 0x140052e0c
mov r8d, 1
mov ecx, r8d
add rbx, 4
xor r9d, r9d
jmp 0x140052e18
xor r9d, r9d
mov ecx, r9d
mov r8d, 1
mov esi, r9d
mov edx, r9d
mov dword [rbp - 0x78], edx
movsxd rdi, ecx
movzx eax, word [rbx]
cmp eax, 0x20
je 0x140052ea4
cmp eax, 9
je 0x140052ea4
test eax, eax
je 0x140052eb9
cmp eax, 0x2e
jne 0x140052e54
test esi, esi
jne 0x140052eca
test rdi, rdi
jne 0x140052eca
mov esi, r8d
jmp 0x140052e85
test rdi, rdi
je 0x140052e77
movzx ecx, ax
call qword [sym.imp.MSVCR100.dll_iswxdigit]
xor r9d, r9d
mov ecx, r9d
test eax, eax
sete cl
test ecx, ecx
jne 0x140052e8b
lea r8d, [r9 + 1]
jmp 0x140052e7f
add eax, 0xffffffd0
cmp eax, 9
ja 0x140052e8e
mov edx, r8d
mov dword [rbp - 0x78], edx
add rbx, 2
jmp 0x140052e24
mov edx, dword [rbp - 0x78]
mov edi, r9d
mov r10, qword [rsp + 0x78]
test edx, edx
je 0x140052ed2
test esi, esi
setne dil
inc edi
jmp 0x140052ed2
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140052eb3
cmp ax, 9
jne 0x140052eb9
add rbx, 2
jmp 0x140052ea4
test edx, edx
je 0x140052eca
mov edi, r9d
test esi, esi
setne dil
inc edi
jmp 0x140052ecd
mov edi, r9d
mov r10, qword [rsp + 0x78]
mov rsi, qword [rbp - 0x60]
mov eax, 1
mov edx, eax
mov rcx, r10
call fcn.14002fa70
mov ebx, eax
mov rax, qword [0x14013f5b0]
movzx ecx, word [rax]
test cx, cx
je 0x140053661
call fcn.140016bd0
movzx edx, ax
lea rcx, str.SMHD
call qword [sym.imp.MSVCR100.dll_wcschr]
test rax, rax
je 0x140053661
test edi, edi
jne 0x140052f29
lea ebx, [rdi + 1]
mov rsi, qword [rsp + 0x60]
jmp 0x140057988
cmp dword [rsp + 0x68], 0
je 0x140052f48
mov r10, qword [rsp + 0x60]
mov rax, qword [r10 + 8]
mov rcx, qword [rax + 0x38]
pxor xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x140052f69
test rsi, rsi
je 0x140052f59
xor edx, edx
mov rcx, rsi
call fcn.14002fbb0
jmp 0x140052f65
mov rcx, qword [0x14013f5a8]
call fcn.14002f9a0
movapd xmm6, xmm0
xor r8d, r8d
mov edi, 1
mov edx, edi
mov rsi, qword [rsp + 0x78]
mov rcx, rsi
call fcn.140001830
cmp word [rax], 0
je 0x14005329a
xor r8d, r8d
mov edx, edi
mov rcx, rsi
call fcn.140001830
xor r8d, r8d
lea rdx, [rbp + 0x100]
mov rcx, rax
call fcn.1400e0030
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0x100]
call qword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
test eax, eax
jne 0x1400532b8
movzx ecx, byte [rsi + 0x23]
test cl, cl
jne 0x140052fed
mov byte [rsp + 0x20], dil
lea rdx, [0x1401035ac]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rcx, qword [rsi + 0x10]
call fcn.1400e6e20
mov ebx, eax
jmp 0x140053290
lea r8, [0x1401035ac]
cmp qword [rsi + 8], r8
jne 0x140053003
mov rbx, qword [rsi + 0x10]
shr rbx, 1
jmp 0x140053007
xor eax, eax
mov ebx, eax
lea rax, [rbx + 1]
lea rdi, [rax + rax]
cmp cl, 2
jne 0x140053026
mov rdx, rbx
mov rcx, r8
call fcn.140006bc0
mov ebx, eax
jmp 0x140053290
mov r9, qword [0x14013b0d0]
cmp rdi, r9
jbe 0x140053052
cmp rdi, qword [rsi + 0x18]
jbe 0x140053052
lea rdx, [0x140124720]
lea rcx, [0x140143150]
call fcn.14005f7b0
mov ebx, eax
jmp 0x140053290
cmp rax, 2
jae 0x14005306d
mov edx, 3
xor r8d, r8d
mov rcx, rsi
call fcn.1400e74d0
jmp case.0x1400574cb.3
movzx eax, byte [rsi + 0x21]
test al, 2
je 0x14005308a
and al, 0x3d
mov byte [rsi + 0x21], al
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r9, qword [0x14013b0d0]
and byte [rsi + 0x21], 0x82
mov r8, qword [rsi + 0x18]
cmp rdi, r8
jbe 0x14005325c
movzx ecx, byte [rsi + 0x20]
movzx eax, cl
cmp cl, 1
jbe 0x1400530b7
cmp al, 2
je 0x140053106
mov rax, qword [rbp + 0xb0]
jmp 0x140053205
cmp rdi, 0x80
ja 0x140053106
cmp rdi, 8
ja 0x1400530cd
mov eax, 8
jmp 0x1400530de
mov eax, 0x80
cmp rdi, 0x10
mov ecx, reloc.WSOCK32.dll_recv
cmovbe eax, ecx
mov qword [rbp + 0x20], rax
mov rcx, rax
call fcn.1400dd290
mov qword [rbp + 0xb0], rax
test rax, rax
jne 0x1400530fd
mov ebx, eax
jmp 0x140053290
mov byte [rsi + 0x20], 1
jmp 0x140053205
cmp rdi, 0x20
jae 0x140053117
mov r10d, SafeArrayAllocDescriptor
jmp 0x1400531bc
cmp rdi, 0x208
jae 0x14005312b
mov r10d, 0x208
jmp 0x1400531bc
cmp rdi, 0x50000
jae 0x140053178
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x140053147
addsd xmm0, xmm9
mulsd xmm0, xmm10
xor eax, eax
comisd xmm0, xmm8
jbe 0x14005316e
subsd xmm0, xmm8
comisd xmm0, xmm8
jae 0x14005316e
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r10, xmm0
add r10, rax
jmp 0x1400531bc
cmp rdi, 0x320000
jae 0x14005318a
lea r10, [rdi + 0x8000]
jmp 0x1400531bc
cmp rdi, 0xc80000
jae 0x1400531b5
mov r10, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r10, rdx
shr r10, 1
add r10, rdx
shr r10, 6
add r10, rdi
jmp 0x1400531bc
lea r10, [rdi + 0x20000]
cmp r10, r9
cmova r10, r9
mov qword [rbp + 0x20], r10
cmp cl, 2
jne 0x1400531e4
test r8, r8
je 0x1400531e4
mov dil, 1
mov rcx, qword [rsi + 8]
call qword [sym.imp.MSVCR100.dll_free]
mov r10, qword [rbp + 0x20]
jmp 0x1400531e7
xor dil, dil
test r10, r10
js 0x14005320f
mov rcx, r10
call qword [sym.imp.MSVCR100.dll_malloc]
mov qword [rbp + 0xb0], rax
test rax, rax
je 0x14005320f
mov byte [rsi + 0x20], 2
mov qword [rsi + 8], rax
mov rax, qword [rbp + 0x20]
jmp 0x140053254
test dil, dil
je 0x140053227
xor eax, eax
mov qword [rsi + 0x18], rax
lea rcx, [0x140141fa8]
mov qword [rsi + 8], rcx
jmp 0x140053232
mov rax, qword [rsi + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
mov qword [rsi + 0x10], rax
lea r8, [0x1401035ac]
lea rdx, str.Out_of_memory.
lea rcx, [0x140143150]
call fcn.14005f7b0
mov ebx, eax
jmp 0x140053290
mov qword [rsi + 0x18], rax
and byte [rsi + 0x21], 0x7f
mov rcx, qword [rsi + 8]
lea rax, [0x1401035ac]
cmp rcx, rax
je 0x140053279
mov rdx, rax
lea r8, [rbx + rbx]
call qword [sym.imp.MSVCR100.dll_memmove]
lea rcx, [rbx + rbx]
mov rax, qword [rsi + 8]
xor edx, edx
mov word [rcx + rax], dx
mov qword [rsi + 0x10], rcx
mov ebx, 1
mov rsi, qword [rsp + 0x60]
jmp 0x140057988
lea rcx, [rbp + 0xe8]
call qword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0xe8]
call qword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
mov rax, qword [0x14013f5b0]
movzx ecx, word [rax]
call fcn.140016bd0
movzx edx, ax
cmp edx, 0x44
je 0x1400532fc
cmp edx, 0x48
je 0x1400532f2
cmp edx, 0x4d
je 0x1400532e8
cmp edx, 0x53
jne 0x140053304
mulsd xmm6, qword [0x140128028]
jmp 0x140053304
mulsd xmm6, qword [0x140128020]
jmp 0x140053304
mulsd xmm6, qword [0x140128018]
jmp 0x140053304
mulsd xmm6, qword [0x140128010]
mov eax, dword [rbp - 0x28]
mov dword [rbp], eax
mov eax, dword [rbp - 0x24]
mov dword [rbp + 4], eax
xor eax, eax
comisd xmm6, xmm8
jbe 0x140053332
subsd xmm6, xmm8
comisd xmm6, xmm8
jae 0x140053332
movabs rcx, 0x8000000000000000
mov rax, rcx
cvttsd2si rcx, xmm6
add rcx, rax
mov rax, qword [rbp]
add rax, rcx
mov qword [rbp], rax
mov ecx, dword [rbp]
mov dword [rbp - 0x28], ecx
shr rax, 0x20
mov dword [rbp - 0x24], eax
mov rax, qword [rbp - 0x28]
mov qword [rbp + 0xe0], rax
lea rdx, [rbp + 0x38]
lea rcx, [rbp + 0xe0]
call qword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
test eax, eax
je 0x1400533b2
movzx eax, word [rbp + 0x44]
movzx ecx, word [rbp + 0x42]
movzx edx, word [rbp + 0x40]
movzx edi, word [rbp + 0x3e]
movzx r9d, word [rbp + 0x3a]
movzx r8d, word [rbp + 0x38]
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], edi
lea rdx, str._04d_02d_02d_02d_02d_02d
lea rcx, [rbp + 0x160]
call qword [sym.imp.MSVCR100.dll__swprintf]
jmp 0x1400533bb
xor eax, eax
mov word [rbp + 0x160], ax
movzx edx, byte [rsi + 0x23]
test dl, dl
jne 0x1400533e6
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
lea rdx, [rbp + 0x160]
mov rcx, qword [rsi + 0x10]
call fcn.1400e6e20
mov ebx, eax
jmp 0x140053290
lea rax, [rbp + 0x160]
cmp qword [rsi + 8], rax
jne 0x1400533fc
mov rbx, qword [rsi + 0x10]
shr rbx, 1
jmp 0x140053415
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rbp + 0x160]
repne scasw ax, word [rdi]
not rcx
dec rcx
mov rbx, rcx
lea rax, [rbx + 1]
lea rdi, [rax + rax]
cmp dl, 2
jne 0x140053438
mov rdx, rbx
lea rcx, [rbp + 0x160]
call fcn.140006bc0
mov ebx, eax
jmp 0x140053290
mov r9, qword [0x14013b0d0]
cmp rdi, r9
jbe 0x140053456
cmp rdi, qword [rsi + 0x18]
jbe 0x140053456
lea r8, [0x1401035ac]
jmp 0x140053038
cmp rax, 2
jb 0x140053058
movzx eax, byte [rsi + 0x21]
test al, 2
je 0x14005347d
and al, 0x3d
mov byte [rsi + 0x21], al
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r9, qword [0x14013b0d0]
and byte [rsi + 0x21], 0x82
mov r8, qword [rsi + 0x18]
cmp rdi, r8
jbe 0x140053641
movzx ecx, byte [rsi + 0x20]
movzx eax, cl
cmp cl, 1
jbe 0x1400534aa
cmp al, 2
je 0x1400534f6
mov rax, qword [rbp + 0xd0]
jmp 0x1400535f5
cmp rdi, 0x80
ja 0x1400534f6
cmp rdi, 8
ja 0x1400534c0
mov eax, 8
jmp 0x1400534d1
mov eax, 0x80
cmp rdi, 0x10
mov ecx, reloc.WSOCK32.dll_recv
cmovbe eax, ecx
mov qword [rbp + 0x10], rax
mov rcx, rax
call fcn.1400dd290
mov qword [rbp + 0xd0], rax
test rax, rax
je 0x14005304b
mov byte [rsi + 0x20], 1
jmp 0x1400535f5
cmp rdi, 0x20
jae 0x140053507
mov r10d, SafeArrayAllocDescriptor
jmp 0x1400535ac
cmp rdi, 0x208
jae 0x14005351b
mov r10d, 0x208
jmp 0x1400535ac
cmp rdi, 0x50000
jae 0x140053568
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x140053537
addsd xmm0, xmm9
mulsd xmm0, xmm10
xor eax, eax
comisd xmm0, xmm8
jbe 0x14005355e
subsd xmm0, xmm8
comisd xmm0, xmm8
jae 0x14005355e
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r10, xmm0
add r10, rax
jmp 0x1400535ac
cmp rdi, 0x320000
jae 0x14005357a
lea r10, [rdi + 0x8000]
jmp 0x1400535ac
cmp rdi, 0xc80000
jae 0x1400535a5
mov r10, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r10, rdx
shr r10, 1
add r10, rdx
shr r10, 6
add r10, rdi
jmp 0x1400535ac
lea r10, [rdi + 0x20000]
cmp r10, r9
cmova r10, r9
mov qword [rbp + 0x10], r10
cmp cl, 2
jne 0x1400535d4
test r8, r8
je 0x1400535d4
mov dil, 1
mov rcx, qword [rsi + 8]
call qword [sym.imp.MSVCR100.dll_free]
mov r10, qword [rbp + 0x10]
jmp 0x1400535d7
xor dil, dil
test r10, r10
js 0x140053607
mov rcx, r10
call qword [sym.imp.MSVCR100.dll_malloc]
mov qword [rbp + 0xd0], rax
test rax, rax
je 0x140053607
mov byte [rsi + 0x20], 2
mov qword [rsi + 8], rax
mov rax, qword [rbp + 0x10]
mov qword [rsi + 0x18], rax
and byte [rsi + 0x21], 0x7f
jmp 0x140053641
test dil, dil
je 0x14005361f
xor eax, eax
mov qword [rsi + 0x18], rax
lea rcx, [0x140141fa8]
mov qword [rsi + 8], rcx
jmp 0x14005362a
mov rax, qword [rsi + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
mov qword [rsi + 0x10], rax
lea r8, [0x1401035ac]
lea rdx, str.Out_of_memory.
jmp 0x14005303f
mov rcx, qword [rsi + 8]
lea rax, [rbp + 0x160]
cmp rcx, rax
je 0x140053279
lea rdx, [rbp + 0x160]
jmp 0x14005326f
cmp edi, 2
je 0x1400536d1
cmp ebx, 2
je 0x1400536d1
cmp dword [rsp + 0x68], 0
je 0x140053684
mov rsi, qword [rsp + 0x60]
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x38]
mov rdi, qword [rcx]
jmp 0x1400536a9
test rsi, rsi
je 0x140053695
xor edx, edx
mov rcx, rsi
call fcn.14002fb10
jmp 0x1400536a1
mov rcx, qword [0x14013f5a8]
call fcn.1400050b0
mov rsi, qword [rsp + 0x60]
mov rdi, rax
xor edx, edx
mov rbx, qword [rsp + 0x78]
mov rcx, rbx
call fcn.14002fb10
lea rdx, [rdi + rax]
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, rbx
call fcn.140001090
mov ebx, 1
jmp 0x140057988
cmp dword [rsp + 0x68], 0
je 0x1400536f0
mov rsi, qword [rsp + 0x60]
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x38]
pxor xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x140053716
test rsi, rsi
je 0x140053701
xor edx, edx
mov rcx, rsi
call fcn.14002fbb0
jmp 0x14005370d
mov rcx, qword [0x14013f5a8]
call fcn.14002f9a0
mov rsi, qword [rsp + 0x60]
movapd xmm6, xmm0
xor edx, edx
mov rdi, qword [rsp + 0x78]
mov rcx, rdi
call fcn.14002fbb0
addsd xmm0, xmm6
movsd qword [rbp - 0x50], xmm0
mov r8b, 0x28
mov rdx, qword [rbp - 0x50]
mov rcx, rdi
call fcn.140001090
mov ebx, 1
jmp 0x140057988
mov rax, qword [0x14013f5b0]
movzx ecx, word [rax]
test cx, cx
je 0x140053aea
call fcn.140016bd0
movzx edx, ax
lea rcx, str.SMHD
call qword [sym.imp.MSVCR100.dll_wcschr]
test rax, rax
je 0x140053ae5
mov rdi, qword [0x14013f5a8]
mov rcx, qword [0x14013f508]
test rcx, rcx
je 0x1400537be
cmp word [rdi], 0
jne 0x1400537be
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x1400537a1
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x1400537be
test rcx, rcx
je 0x1400537be
xor r8d, r8d
mov ebx, 1
mov edx, ebx
call fcn.140001830
mov rdi, rax
jmp 0x1400537c3
mov ebx, 1
xor r8d, r8d
mov edx, ebx
mov rsi, qword [rsp + 0x78]
mov rcx, rsi
call fcn.140001830
mov byte [rbp - 0x63], 1
test rdi, rdi
je 0x140053880
lea r8, [rbp - 0x63]
mov rdx, rax
mov rcx, rdi
call fcn.1400e0360
mov rdi, rax
cmp byte [rbp - 0x63], 0
jne 0x140053880
mov rax, qword [0x14013f5b0]
movzx ecx, word [rax]
call fcn.140016bd0
movzx r11d, ax
cmp r11d, 0x44
je 0x14005384f
cmp r11d, 0x48
je 0x140053839
cmp r11d, 0x4d
jne 0x14005386d
movabs rax, 0x8888888888888889
imul rdi
add rdi, rdx
sar rdi, 5
jmp 0x140053863
movabs rax, 0x48d159e26af37c05
imul rdi
mov rdi, rdx
sar rdi, 0xa
jmp 0x140053863
movabs rax, 0x1845c8a0ce512957
imul rdi
mov rdi, rdx
sar rdi, 0xd
mov rax, rdi
shr rax, 0x3f
add rdi, rax
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rdx, rdi
mov rcx, rsi
call fcn.140001090
jmp 0x140053290
movzx ecx, byte [rsi + 0x23]
test cl, cl
jne 0x140053892
mov byte [rsp + 0x20], 1
jmp 0x140052fcf
lea r8, [0x1401035ac]
cmp qword [rsi + 8], r8
jne 0x1400538a8
mov rbx, qword [rsi + 0x10]
shr rbx, 1
jmp 0x1400538ac
xor eax, eax
mov ebx, eax
lea rax, [rbx + 1]
lea rdi, [rax + rax]
cmp cl, 2
jne 0x1400538c9
mov rdx, rbx
mov rcx, r8
call fcn.140006bc0
jmp 0x140052fe6
mov r9, qword [0x14013b0d0]
cmp rdi, r9
jbe 0x1400538f3
cmp rdi, qword [rsi + 0x18]
jbe 0x1400538f3
lea rdx, [0x140124720]
lea rcx, [0x140143150]
call fcn.14005f7b0
jmp 0x140052fe6
cmp rax, 2
jb 0x140053058
movzx eax, byte [rsi + 0x21]
test al, 2
je 0x14005391a
and al, 0x3d
mov byte [rsi + 0x21], al
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r9, qword [0x14013b0d0]
and byte [rsi + 0x21], 0x82
mov r8, qword [rsi + 0x18]
cmp rdi, r8
jbe 0x14005325c
movzx ecx, byte [rsi + 0x20]
movzx eax, cl
cmp cl, 1
jbe 0x140053947
cmp al, 2
je 0x140053993
mov rax, qword [rbp + 0xb8]
jmp 0x140053a92
cmp rdi, 0x80
ja 0x140053993
cmp rdi, 8
ja 0x14005395d
mov eax, 8
jmp 0x14005396e
mov eax, 0x80
cmp rdi, 0x10
mov ecx, reloc.WSOCK32.dll_recv
cmovbe eax, ecx
mov qword [rbp + 8], rax
mov rcx, rax
call fcn.1400dd290
mov qword [rbp + 0xb8], rax
test rax, rax
je 0x140052fe6
mov byte [rsi + 0x20], 1
jmp 0x140053a92
cmp rdi, 0x20
jae 0x1400539a4
mov r10d, SafeArrayAllocDescriptor
jmp 0x140053a49
cmp rdi, 0x208
jae 0x1400539b8
mov r10d, 0x208
jmp 0x140053a49
cmp rdi, 0x50000
jae 0x140053a05
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x1400539d4
addsd xmm0, xmm9
mulsd xmm0, xmm10
xor eax, eax
comisd xmm0, xmm8
jbe 0x1400539fb
subsd xmm0, xmm8
comisd xmm0, xmm8
jae 0x1400539fb
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r10, xmm0
add r10, rax
jmp 0x140053a49
cmp rdi, 0x320000
jae 0x140053a17
lea r10, [rdi + 0x8000]
jmp 0x140053a49
cmp rdi, 0xc80000
jae 0x140053a42
mov r10, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r10, rdx
shr r10, 1
add r10, rdx
shr r10, 6
add r10, rdi
jmp 0x140053a49
lea r10, [rdi + 0x20000]
cmp r10, r9
cmova r10, r9
mov qword [rbp + 8], r10
cmp cl, 2
jne 0x140053a71
test r8, r8
je 0x140053a71
mov dil, 1
mov rcx, qword [rsi + 8]
call qword [sym.imp.MSVCR100.dll_free]
mov r10, qword [rbp + 8]
jmp 0x140053a74
xor dil, dil
test r10, r10
js 0x140053a9f
mov rcx, r10
call qword [sym.imp.MSVCR100.dll_malloc]
mov qword [rbp + 0xb8], rax
test rax, rax
je 0x140053a9f
mov byte [rsi + 0x20], 2
mov qword [rsi + 8], rax
mov rax, qword [rbp + 8]
jmp 0x140053254
test dil, dil
je 0x140053ab7
xor eax, eax
mov qword [rsi + 0x18], rax
lea rcx, [0x140141fa8]
mov qword [rsi + 8], rcx
jmp 0x140053ac2
mov rax, qword [rsi + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
mov qword [rsi + 0x10], rax
lea r8, [0x1401035ac]
lea rdx, str.Out_of_memory.
lea rcx, [0x140143150]
call fcn.14005f7b0
jmp 0x140052fe6
mov r8, qword [rsp + 0x60]
mov rax, qword [r8 + 8]
cmp qword [rax + 0x38], 0
je 0x140053b0d
cmp byte [rax + 0x21], 0
jne 0x140053b0d
mov eax, 1
mov esi, eax
mov edi, eax
xor ecx, ecx
mov ebx, ecx
jmp 0x140053caa
xor r9d, r9d
mov esi, r9d
mov dword [rsp + 0x68], r9d
mov rbx, qword [0x14013f5a8]
mov rcx, qword [0x14013f508]
mov qword [rbp - 0x60], rcx
test rcx, rcx
je 0x140053b5e
cmp word [rbx], si
jne 0x140053b5e
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x140053b44
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x140053b5e
test rcx, rcx
je 0x140053b62
mov edx, 1
call fcn.14002fa70
mov edi, eax
jmp 0x140053ca1
mov qword [rbp - 0x60], r9
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140053b71
cmp ax, 9
jne 0x140053b77
add rbx, 2
jmp 0x140053b62
movzx eax, word [rbx]
test ax, ax
je 0x140053c9e
cmp ax, 0x2d
je 0x140053b8f
cmp ax, 0x2b
jne 0x140053b93
add rbx, 2
cmp word [rbx], 0x30
jne 0x140053bcc
movzx eax, word [rbx + 2]
cmp ax, 0x78
je 0x140053ba9
cmp ax, 0x58
jne 0x140053bcc
movzx ecx, word [rbx + 4]
call qword [sym.imp.MSVCR100.dll_isxdigit]
test eax, eax
je 0x140053bc9
mov r8d, 1
mov ecx, r8d
add rbx, 4
xor r9d, r9d
jmp 0x140053bd5
xor r9d, r9d
mov ecx, r9d
mov r8d, 1
mov esi, r9d
mov edx, r9d
mov dword [rbp - 0x78], edx
movsxd rdi, ecx
movzx eax, word [rbx]
cmp eax, 0x20
je 0x140053c70
cmp eax, 9
je 0x140053c70
test eax, eax
je 0x140053c85
cmp eax, 0x2e
jne 0x140053c19
test esi, esi
jne 0x140053c9a
test rdi, rdi
jne 0x140053c9a
mov esi, r8d
jmp 0x140053c4a
test rdi, rdi
je 0x140053c3c
movzx ecx, ax
call qword [sym.imp.MSVCR100.dll_iswxdigit]
xor r9d, r9d
mov ecx, r9d
test eax, eax
sete cl
test ecx, ecx
jne 0x140053c50
lea r8d, [r9 + 1]
jmp 0x140053c44
add eax, 0xffffffd0
cmp eax, 9
ja 0x140053c53
mov edx, r8d
mov dword [rbp - 0x78], edx
add rbx, 2
jmp 0x140053be1
mov edx, dword [rbp - 0x78]
mov edi, r9d
test edx, edx
je 0x140053c62
test esi, esi
setne dil
inc edi
mov esi, dword [rsp + 0x68]
jmp 0x140053ca1
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140053c7f
cmp ax, 9
jne 0x140053c85
add rbx, 2
jmp 0x140053c70
test edx, edx
je 0x140053c9a
mov edi, r9d
test esi, esi
setne dil
inc edi
mov esi, dword [rsp + 0x68]
jmp 0x140053ca1
mov esi, dword [rsp + 0x68]
mov edi, r9d
mov rbx, qword [rbp - 0x60]
mov eax, 1
mov edx, eax
mov rcx, qword [rsp + 0x78]
call fcn.14002fa70
cmp edi, 2
je 0x140053d25
cmp eax, 2
je 0x140053d25
test esi, esi
je 0x140053cd6
mov rsi, qword [rsp + 0x60]
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x38]
mov rdi, qword [rcx]
jmp 0x140053cfb
test rbx, rbx
je 0x140053ce7
xor edx, edx
mov rcx, rbx
call fcn.14002fb10
jmp 0x140053cf3
mov rcx, qword [0x14013f5a8]
call fcn.1400050b0
mov rsi, qword [rsp + 0x60]
mov rdi, rax
xor edx, edx
mov rbx, qword [rsp + 0x78]
mov rcx, rbx
call fcn.14002fb10
sub rax, rdi
mov rcx, rbx
mov rdx, rax
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
call fcn.140001090
mov ebx, 1
jmp 0x140057988
test esi, esi
je 0x140053d41
mov rsi, qword [rsp + 0x60]
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x38]
pxor xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x140053d67
test rbx, rbx
je 0x140053d52
xor edx, edx
mov rcx, rbx
call fcn.14002fbb0
jmp 0x140053d5e
mov rcx, qword [0x14013f5a8]
call fcn.14002f9a0
mov rsi, qword [rsp + 0x60]
movapd xmm6, xmm0
xor edx, edx
mov rdi, qword [rsp + 0x78]
mov rcx, rdi
call fcn.14002fbb0
subsd xmm0, xmm6
movsd qword [rbp - 0x50], xmm0
mov r8b, 0x28
mov rdx, qword [rbp - 0x50]
mov rcx, rdi
call fcn.140001090
mov ebx, 1
jmp 0x140057988
mov rax, qword [r8 + 8]
cmp qword [rax + 0x38], 0
je 0x140053dbb
cmp byte [rax + 0x21], 0
jne 0x140053dbb
mov eax, 1
mov esi, eax
mov edi, eax
xor ecx, ecx
mov ebx, ecx
jmp 0x140053f52
xor r9d, r9d
mov esi, r9d
mov dword [rsp + 0x68], r9d
mov rbx, qword [0x14013f5a8]
mov rcx, qword [0x14013f508]
mov qword [rbp - 0x60], rcx
test rcx, rcx
je 0x140053e0c
cmp word [rbx], si
jne 0x140053e0c
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x140053df2
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x140053e0c
test rcx, rcx
je 0x140053e10
mov edx, 1
call fcn.14002fa70
mov edi, eax
jmp 0x140053f44
mov qword [rbp - 0x60], r9
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140053e1f
cmp ax, 9
jne 0x140053e25
add rbx, 2
jmp 0x140053e10
movzx eax, word [rbx]
test ax, ax
jne 0x140053e35
mov edi, r9d
jmp 0x140053f49
cmp ax, 0x2d
je 0x140053e41
cmp ax, 0x2b
jne 0x140053e45
add rbx, 2
cmp word [rbx], 0x30
jne 0x140053e7e
movzx eax, word [rbx + 2]
cmp ax, 0x78
je 0x140053e5b
cmp ax, 0x58
jne 0x140053e7e
movzx ecx, word [rbx + 4]
call qword [sym.imp.MSVCR100.dll_isxdigit]
test eax, eax
je 0x140053e7b
mov r8d, 1
mov ecx, r8d
add rbx, 4
xor r9d, r9d
jmp 0x140053e87
xor r9d, r9d
mov ecx, r9d
mov r8d, 1
mov esi, r9d
mov edx, r9d
mov dword [rbp - 0x78], edx
movsxd rdi, ecx
movzx eax, word [rbx]
cmp eax, 0x20
je 0x140053f17
cmp eax, 9
je 0x140053f17
test eax, eax
je 0x140053f2c
cmp eax, 0x2e
jne 0x140053ec3
test esi, esi
jne 0x140053f3d
test rdi, rdi
jne 0x140053f3d
mov esi, r8d
jmp 0x140053ef4
test rdi, rdi
je 0x140053ee6
movzx ecx, ax
call qword [sym.imp.MSVCR100.dll_iswxdigit]
xor r9d, r9d
mov ecx, r9d
test eax, eax
sete cl
test ecx, ecx
jne 0x140053efa
lea r8d, [r9 + 1]
jmp 0x140053eee
add eax, 0xffffffd0
cmp eax, 9
ja 0x140053efd
mov edx, r8d
mov dword [rbp - 0x78], edx
add rbx, 2
jmp 0x140053e93
mov edx, dword [rbp - 0x78]
mov edi, r9d
mov r10, qword [rsp + 0x78]
test edx, edx
je 0x140053f11
test esi, esi
setne dil
inc edi
mov esi, dword [rsp + 0x68]
jmp 0x140053f49
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140053f26
cmp ax, 9
jne 0x140053f2c
add rbx, 2
jmp 0x140053f17
test edx, edx
je 0x140053f3d
mov edi, r9d
test esi, esi
setne dil
inc edi
jmp 0x140053f40
mov edi, r9d
mov esi, dword [rsp + 0x68]
mov r10, qword [rsp + 0x78]
mov rbx, qword [rbp - 0x60]
mov eax, 1
mov edx, eax
mov rcx, r10
call fcn.14002fa70
cmp edi, 2
je 0x140053fb9
cmp eax, 2
je 0x140053fb9
test esi, esi
je 0x140053f7c
mov rsi, qword [rsp + 0x60]
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x38]
mov rdi, qword [rcx]
jmp 0x140053fa1
test rbx, rbx
je 0x140053f8d
xor edx, edx
mov rcx, rbx
call fcn.14002fb10
jmp 0x140053f99
mov rcx, qword [0x14013f5a8]
call fcn.1400050b0
mov rsi, qword [rsp + 0x60]
mov rdi, rax
xor edx, edx
mov rbx, qword [rsp + 0x78]
mov rcx, rbx
call fcn.14002fb10
imul rax, rdi
jmp 0x140053d0d
test esi, esi
je 0x140053fd5
mov rsi, qword [rsp + 0x60]
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x38]
pxor xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x140053ffb
test rbx, rbx
je 0x140053fe6
xor edx, edx
mov rcx, rbx
call fcn.14002fbb0
jmp 0x140053ff2
mov rcx, qword [0x14013f5a8]
call fcn.14002f9a0
mov rsi, qword [rsp + 0x60]
movapd xmm6, xmm0
xor edx, edx
mov rdi, qword [rsp + 0x78]
mov rcx, rdi
call fcn.14002fbb0
mulsd xmm0, xmm6
movsd qword [rbp - 0x50], xmm0
mov r8b, 0x28
mov rdx, qword [rbp - 0x50]
mov rcx, rdi
call fcn.140001090
mov ebx, 1
jmp 0x140057988
mov rax, qword [r8 + 8]
cmp qword [rax + 0x38], 0
je 0x14005404f
cmp byte [rax + 0x21], 0
jne 0x14005404f
mov eax, 1
mov esi, eax
mov edi, eax
xor ecx, ecx
mov ebx, ecx
jmp 0x1400541eb
xor r9d, r9d
mov esi, r9d
mov dword [rsp + 0x68], r9d
mov rbx, qword [0x14013f5a8]
mov rcx, qword [0x14013f508]
mov qword [rbp - 0x60], rcx
test rcx, rcx
je 0x1400540a0
cmp word [rbx], si
jne 0x1400540a0
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x140054086
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x1400540a0
test rcx, rcx
je 0x1400540a4
mov edx, 1
call fcn.14002fa70
mov edi, eax
jmp 0x1400541dd
mov qword [rbp - 0x60], r9
movzx eax, word [rbx]
cmp ax, 0x20
je 0x1400540b3
cmp ax, 9
jne 0x1400540b9
add rbx, 2
jmp 0x1400540a4
movzx eax, word [rbx]
test ax, ax
jne 0x1400540c9
mov edi, r9d
jmp 0x1400541e2
cmp ax, 0x2d
je 0x1400540d5
cmp ax, 0x2b
jne 0x1400540d9
add rbx, 2
cmp word [rbx], 0x30
jne 0x140054112
movzx eax, word [rbx + 2]
cmp ax, 0x78
je 0x1400540ef
cmp ax, 0x58
jne 0x140054112
movzx ecx, word [rbx + 4]
call qword [sym.imp.MSVCR100.dll_isxdigit]
test eax, eax
je 0x14005410f
mov r8d, 1
mov ecx, r8d
add rbx, 4
xor r9d, r9d
jmp 0x14005411b
xor r9d, r9d
mov ecx, r9d
mov r8d, 1
mov esi, r9d
mov edx, r9d
mov dword [rbp - 0x78], edx
movsxd rdi, ecx
movzx eax, word [rbx]
cmp eax, 0x20
je 0x1400541b0
cmp eax, 9
je 0x1400541b0
test eax, eax
je 0x1400541c5
cmp eax, 0x2e
jne 0x14005415b
test esi, esi
jne 0x1400541d6
test rdi, rdi
jne 0x1400541d6
mov esi, r8d
jmp 0x14005418c
test rdi, rdi
je 0x14005417e
movzx ecx, ax
call qword [sym.imp.MSVCR100.dll_iswxdigit]
xor r9d, r9d
mov ecx, r9d
test eax, eax
sete cl
test ecx, ecx
jne 0x140054192
lea r8d, [r9 + 1]
jmp 0x140054186
add eax, 0xffffffd0
cmp eax, 9
ja 0x140054195
mov edx, r8d
mov dword [rbp - 0x78], edx
add rbx, 2
jmp 0x140054127
mov edx, dword [rbp - 0x78]
mov edi, r9d
mov r10, qword [rsp + 0x78]
test edx, edx
je 0x1400541a9
test esi, esi
setne dil
inc edi
mov esi, dword [rsp + 0x68]
jmp 0x1400541e2
movzx eax, word [rbx]
cmp ax, 0x20
je 0x1400541bf
cmp ax, 9
jne 0x1400541c5
add rbx, 2
jmp 0x1400541b0
test edx, edx
je 0x1400541d6
mov edi, r9d
test esi, esi
setne dil
inc edi
jmp 0x1400541d9
mov edi, r9d
mov esi, dword [rsp + 0x68]
mov r10, qword [rsp + 0x78]
mov rbx, qword [rbp - 0x60]
mov eax, 1
mov edx, eax
mov rcx, r10
call fcn.14002fa70
cmp edi, 2
je 0x140054267
cmp eax, 2
je 0x140054267
test esi, esi
je 0x140054215
mov rsi, qword [rsp + 0x60]
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x38]
mov rdi, qword [rcx]
jmp 0x14005423a
test rbx, rbx
je 0x140054226
xor edx, edx
mov rcx, rbx
call fcn.14002fb10
jmp 0x140054232
mov rcx, qword [0x14013f5a8]
call fcn.1400050b0
mov rsi, qword [rsp + 0x60]
mov rdi, rax
test rdi, rdi
jne 0x14005424e
mov rcx, qword [rsp + 0x78]
call fcn.14002f9e0
jmp 0x140057986
xor edx, edx
mov rbx, qword [rsp + 0x78]
mov rcx, rbx
call fcn.14002fb10
cqo
idiv rdi
jmp 0x140053d0d
test esi, esi
je 0x140054283
mov rsi, qword [rsp + 0x60]
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x38]
pxor xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x1400542a9
test rbx, rbx
je 0x140054294
xor edx, edx
mov rcx, rbx
call fcn.14002fbb0
jmp 0x1400542a0
mov rcx, qword [0x14013f5a8]
call fcn.14002f9a0
mov rsi, qword [rsp + 0x60]
movapd xmm6, xmm0
ucomisd xmm6, xmm11
jp 0x1400542c1
jne 0x1400542c1
mov rcx, qword [rsp + 0x78]
call fcn.14002f9e0
jmp 0x140057986
xor edx, edx
mov rdi, qword [rsp + 0x78]
mov rcx, rdi
call fcn.14002fbb0
divsd xmm0, xmm6
movsd qword [rbp - 0x50], xmm0
mov r8b, 0x28
mov rdx, qword [rbp - 0x50]
mov rcx, rdi
jmp 0x140053d16
mov edx, 2
mov rsi, r8
mov rcx, r8
call fcn.14004cc90
mov rdi, rax
test eax, eax
jns 0x140054305
xor eax, eax
mov edi, eax
jmp 0x140054317
mov edx, 1
mov rcx, rsi
call fcn.14004cbc0
cmp edi, eax
cmovg edi, eax
movsxd r8, edi
xor r9d, r9d
mov rdx, qword [0x14013f5a8]
mov rcx, qword [rsp + 0x78]
mov byte [rsp + 0x20], 1
call fcn.1400e6e20
jmp 0x140057986
mov edx, 2
mov rsi, r8
mov rcx, r8
call fcn.14004cc90
mov rdi, rax
test eax, eax
mov eax, 0
cmovs edi, eax
lea edx, [rax + 1]
mov rcx, rsi
call fcn.14004cbc0
mov rdx, rax
mov eax, edi
cmp rax, rdx
cmova edi, edx
movsxd r8, edi
sub rdx, r8
mov rax, qword [0x14013f5a8]
lea rdx, [rax + rdx*2]
mov byte [rsp + 0x20], 1
xor r9d, r9d
mov rcx, qword [rsp + 0x78]
call fcn.1400e6e20
jmp 0x140057986
mov rsi, r8
cmp byte [r8 + 1], 4
jb 0x1400543cf
mov rax, qword [r8 + 8]
mov rcx, qword [rax + 0x68]
cmp word [rcx], 0
je 0x1400543cf
mov edx, 3
mov rcx, r8
call fcn.14004cc90
mov rbx, rax
cmp eax, 1
jge 0x1400543d4
mov rcx, qword [rsp + 0x78]
call fcn.14002f9e0
jmp 0x140057986
mov ebx, 0x7fffffff
mov edx, 2
mov rcx, rsi
call fcn.14004cc90
mov rdi, rax
mov rax, qword [0x14013f5c0]
movzx ecx, word [rax]
call fcn.140016bd0
cmp ax, 0x4c
jne 0x140054422
cmp edi, 1
jge 0x14005440d
mov rcx, qword [rsp + 0x78]
call fcn.14002f9e0
jmp 0x140057986
mov ecx, 1
mov eax, ecx
sub eax, ebx
add edi, eax
cmp edi, ecx
jge 0x14005442d
lea ebx, [rbx + rdi - 1]
jmp 0x140054427
mov ecx, 1
cmp edi, 1
cmovl edi, ecx
mov edx, ecx
mov rcx, rsi
call fcn.14004cbc0
mov r11, rax
mov eax, edi
cmp r11, rax
jae 0x140054450
mov rcx, qword [rsp + 0x78]
call fcn.14002f9e0
jmp 0x140057986
lea eax, [rdi - 1]
movsxd rcx, eax
sub r11, rcx
mov eax, ebx
cmp rax, r11
cmova ebx, r11d
movsxd rcx, edi
mov rax, qword [0x14013f5a8]
lea rdx, [rax + rcx*2 - 2]
movsxd r8, ebx
jmp 0x14005437c
mov edx, 2
mov rsi, r8
mov rcx, r8
call fcn.14004cc90
mov rdi, rax
test eax, eax
mov eax, 0
cmovs edi, eax
lea edx, [rax + 1]
mov rcx, rsi
call fcn.14004cbc0
mov r8, rax
mov eax, edi
cmp rax, r8
cmova edi, r8d
movsxd rcx, edi
mov rax, qword [0x14013f5a8]
lea rdx, [rax + rcx*2]
sub r8, rcx
jmp 0x14005437c
mov edx, 2
mov rsi, r8
mov rcx, r8
call fcn.14004cc90
mov rdi, rax
test eax, eax
mov eax, 0
cmovs edi, eax
lea edx, [rax + 1]
mov rcx, rsi
call fcn.14004cbc0
mov r8, rax
mov eax, edi
cmp rax, r8
cmova edi, r8d
movsxd rax, edi
sub r8, rax
jmp 0x14005431a
mov esi, 1
mov r8d, esi
mov edx, esi
mov rcx, r10
call fcn.140001830
mov rdi, rax
mov rbx, qword [rsp + 0x78]
cmp rax, qword [0x14013f5a8]
jne 0x14005453a
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140054535
mov rax, qword [rbx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, sil
je 0x140054596
mov edx, esi
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14004cbc0
mov r8, rax
mov byte [rsp + 0x20], 1
xor r9d, r9d
xor edx, edx
mov rcx, rbx
call fcn.1400e6e20
cmp eax, 1
jne 0x140057984
xor r8d, r8d
mov edx, eax
mov rcx, rbx
call fcn.140001830
mov rdi, rax
mov rcx, qword [0x14013f5a8]
mov rdx, rax
movzx eax, word [rcx]
mov word [rdx], ax
add rcx, 2
add rdx, 2
test ax, ax
jne 0x140054581
jmp 0x14005459b
mov rsi, qword [rsp + 0x60]
mov rax, qword [0x14013f5b0]
movzx ecx, word [rax]
test cx, cx
je 0x1400545cd
call fcn.140016bd0
cmp ax, 0x54
jne 0x1400545cd
mov rax, qword [0x14013f5b0]
cmp word [rax + 2], 0
jne 0x1400545cd
mov rcx, rdi
call fcn.14002f6a0
jmp 0x1400545e3
mov rcx, rdi
cmp byte [rsi], 0x31
jne 0x1400545dd
call qword [sym.imp.USER32.dll_CharLowerW]
jmp 0x1400545e3
call qword [sym.imp.USER32.dll_CharUpperW]
cmp byte [rbx + 0x23], 0
jne 0x1400545ed
mov rbx, qword [rbx + 0x10]
cmp byte [rbx + 0x23], 2
jne 0x14005460e
cmp qword [0x140143de8], 0
je 0x14005460e
lea rcx, [0x140143dd0]
call fcn.140006d40
jmp 0x140057986
and byte [rbx + 0x21], 0x86
jmp 0x140053d1b
mov rcx, qword [0x14013f508]
test rcx, rcx
je 0x140054648
cmp byte [rcx + 0x23], 0
jne 0x140054633
mov rax, qword [rcx + 0x10]
movzx edx, byte [rax + 0x21]
jmp 0x140054637
movzx edx, byte [rcx + 0x21]
test dl, 1
je 0x140054648
call fcn.14002cff0
mov rsi, qword [rsp + 0x60]
jmp 0x140054658
mov edx, 1
mov rsi, r8
mov rcx, r8
call fcn.14004cbc0
mov rcx, qword [rsp + 0x78]
jmp 0x140053d10
mov rsi, qword [0x14013f5b8]
mov dword [rbp - 8], 0xffffffff
movzx ecx, word [rsi]
test cx, cx
je 0x1400546af
call fcn.140016bd0
movzx edx, ax
lea rcx, [0x1401208cc]
call qword [sym.imp.MSVCR100.dll_wcschr]
test rax, rax
je 0x1400546af
lea rcx, [rsi + 2]
cmp word [rcx], 0
je 0x1400546af
call fcn.14001db30
mov dword [rsp + 0x68], eax
test eax, eax
jle 0x1400547eb
jmp 0x1400546b7
mov dword [rsp + 0x68], 1
mov rax, qword [0x14013f5b0]
mov qword [rbp - 0x60], rax
cmp word [rax], 0
jne 0x1400546d2
xor edx, edx
mov dword [rbp - 8], edx
jmp 0x1400547ed
mov rax, qword [0x14013f5a8]
mov qword [rbp - 0x78], rax
mov edx, 4
mov rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.14004cc90
mov rdi, rax
test eax, eax
mov eax, 0
cmovs edi, eax
lea edx, [rax + 1]
mov rcx, rbx
call fcn.14004cbc0
mov rbx, rax
cmp edi, eax
jge 0x1400547eb
movzx ecx, word [rsi]
cmp cx, 0x31
je 0x1400547a6
call fcn.140016bd0
cmp ax, 0x52
je 0x1400547a6
mov edx, 2
mov rcx, qword [rsp + 0x60]
call fcn.14004cbc0
mov qword [rbp - 0x50], rax
mov ebx, 1
movsxd rax, edi
mov rcx, qword [rbp - 0x78]
lea rcx, [rcx + rax*2]
mov rdi, qword [rbp - 0x60]
mov esi, dword [rsp + 0x68]
nop word [rax + rax]
mov rax, qword [0x14013b0f8]
movzx edx, byte [rax + 0x132]
test dl, dl
jne 0x14005477c
mov rdx, rdi
call fcn.1400e0a80
jmp 0x140054791
cmp dl, 2
mov rdx, rdi
jne 0x14005478b
call fcn.1400e0d30
jmp 0x140054791
call qword [sym.imp.MSVCR100.dll_wcsstr]
test rax, rax
je 0x1400547eb
cmp ebx, esi
je 0x1400547d5
inc ebx
mov rcx, qword [rbp - 0x50]
lea rcx, [rax + rcx*2]
jmp 0x140054760
mov rax, qword [rbp - 0x50]
movzx r9d, byte [rax + 0x132]
movsxd rax, edi
sub rbx, rax
mov esi, dword [rsp + 0x68]
mov dword [rsp + 0x20], esi
mov r8, qword [rbp - 0x60]
mov rdx, rbx
mov rdi, qword [rbp - 0x78]
mov rcx, rdi
call fcn.1400e0830
jmp 0x1400547d9
mov rdi, qword [rbp - 0x78]
test rax, rax
je 0x1400547eb
sub rax, rdi
mov rbx, rax
sar rbx, 1
mov qword [rbp - 8], rbx
xor edx, edx
mov rbx, qword [0x140140268]
lea rsi, [0x140103674]
cmp dword [rbp - 8], 0
lea rax, [0x14010771c]
cmovl rsi, rax
movzx r8d, byte [rbx + 0x23]
test r8b, r8b
jne 0x140054831
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, rsi
mov rcx, qword [rbx + 0x10]
call fcn.1400e6e20
jmp 0x140054ae7
mov r9b, 1
lea r11, [0x1401035ac]
test rsi, rsi
jne 0x14005484b
xor r9b, r9b
mov rcx, rdx
mov rsi, r11
jmp 0x14005486c
cmp qword [rbx + 8], rsi
jne 0x14005485a
mov rcx, qword [rbx + 0x10]
shr rcx, 1
jmp 0x14005486c
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rsi
repne scasw ax, word [rdi]
not rcx
dec rcx
mov qword [rbp - 0x78], rcx
lea rax, [rcx + 1]
lea rdi, [rax + rax]
cmp r8b, 2
jne 0x14005488e
mov rdx, rcx
mov rcx, rsi
call fcn.140006bc0
jmp 0x140054ae7
mov r10, qword [0x14013b0d0]
cmp rdi, r10
jbe 0x1400548bb
cmp rdi, qword [rbx + 0x18]
jbe 0x1400548bb
mov r8, r11
lea rdx, [0x140124720]
lea rcx, [0x140143150]
call fcn.14005f7b0
jmp 0x140054ae7
cmp rax, 2
jae 0x1400548da
test r9b, r9b
setne dl
add edx, 2
xor r8d, r8d
mov rcx, rbx
call fcn.1400e74d0
jmp 0x140054ae7
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400548f7
and al, 0x3d
mov byte [rbx + 0x21], al
mov rcx, qword [rbx]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r10, qword [0x14013b0d0]
and byte [rbx + 0x21], 0x82
mov r8, qword [rbx + 0x18]
cmp rdi, r8
jbe 0x140054abb
movzx ecx, byte [rbx + 0x20]
movzx eax, cl
cmp cl, 1
jbe 0x140054921
cmp al, 2
je 0x14005496a
mov rax, qword [rbp + 0x48]
jmp 0x140054a66
cmp rdi, 0x80
ja 0x14005496a
cmp rdi, 8
ja 0x140054937
mov eax, 8
jmp 0x140054948
mov eax, 0x80
cmp rdi, 0x10
mov ecx, reloc.WSOCK32.dll_recv
cmovbe eax, ecx
mov qword [rbp + 0x28], rax
mov rcx, rax
call fcn.1400dd290
mov qword [rbp + 0x48], rax
test rax, rax
je 0x140054ae7
mov byte [rbx + 0x20], 1
jmp 0x140054a66
cmp rdi, 0x20
jae 0x14005497b
mov r9d, SafeArrayAllocDescriptor
jmp 0x140054a20
cmp rdi, 0x208
jae 0x14005498f
mov r9d, 0x208
jmp 0x140054a20
cmp rdi, 0x50000
jae 0x1400549dc
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x1400549ab
addsd xmm0, xmm9
mulsd xmm0, xmm10
xor eax, eax
comisd xmm0, xmm8
jbe 0x1400549d2
subsd xmm0, xmm8
comisd xmm0, xmm8
jae 0x1400549d2
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r9, xmm0
add r9, rax
jmp 0x140054a20
cmp rdi, 0x320000
jae 0x1400549ee
lea r9, [rdi + 0x8000]
jmp 0x140054a20
cmp rdi, 0xc80000
jae 0x140054a19
mov r9, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r9, rdx
shr r9, 1
add r9, rdx
shr r9, 6
add r9, rdi
jmp 0x140054a20
lea r9, [rdi + 0x20000]
cmp r9, r10
cmova r9, r10
mov qword [rbp + 0x28], r9
cmp cl, 2
jne 0x140054a48
test r8, r8
je 0x140054a48
mov dil, 1
mov rcx, qword [rbx + 8]
call qword [sym.imp.MSVCR100.dll_free]
mov r9, qword [rbp + 0x28]
jmp 0x140054a4b
xor dil, dil
test r9, r9
js 0x140054a78
mov rcx, r9
call qword [sym.imp.MSVCR100.dll_malloc]
mov qword [rbp + 0x48], rax
test rax, rax
je 0x140054a78
mov byte [rbx + 0x20], 2
mov qword [rbx + 8], rax
mov rax, qword [rbp + 0x28]
mov qword [rbx + 0x18], rax
and byte [rbx + 0x21], 0x7f
jmp 0x140054abb
test dil, dil
je 0x140054a90
xor eax, eax
mov qword [rbx + 0x18], rax
lea rcx, [0x140141fa8]
mov qword [rbx + 8], rcx
jmp 0x140054a9b
mov rax, qword [rbx + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
mov qword [rbx + 0x10], rax
lea r8, [0x1401035ac]
lea rdx, str.Out_of_memory.
lea rcx, [0x140143150]
call fcn.14005f7b0
jmp 0x140054ae7
mov rcx, qword [rbx + 8]
mov rdi, qword [rbp - 0x78]
cmp rcx, rsi
je 0x140054ad5
lea r8, [rdi + rdi]
mov rdx, rsi
call qword [sym.imp.MSVCR100.dll_memmove]
lea rcx, [rdi + rdi]
mov rax, qword [rbx + 8]
xor edx, edx
mov word [rcx + rax], dx
mov qword [rbx + 0x10], rcx
movsxd rdx, dword [rbp - 8]
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, qword [rsp + 0x78]
call fcn.140001090
jmp case.0x1400574cb.3
mov rsi, r8
mov rcx, r8
call fcn.140079d90
jmp 0x140057986
mov r8, qword [0x14013f5b8]
mov rdx, qword [0x14013f5b0]
mov rcx, qword [0x14013f5a8]
call fcn.1400635f0
mov rsi, qword [rsp + 0x60]
jmp 0x140057986
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14007a2d0
jmp 0x140057986
mov rdx, qword [0x14013f5a0]
mov rsi, r8
mov rcx, r8
call fcn.14007b350
jmp 0x140057986
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14007c770
jmp 0x140057986
mov edx, 7
mov rcx, r8
call fcn.14004cc90
mov qword [rbp - 0x50], rax
mov edx, 6
mov rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.14004cc90
mov qword [rbp - 0x10], rax
mov edx, 5
mov rcx, rdi
call fcn.14004cc90
mov rsi, rax
mov edx, 4
mov rcx, rdi
call fcn.14004cc90
mov rbx, rax
mov edx, 3
mov rcx, rdi
call fcn.14004cc90
mov rdi, rax
mov edx, 2
mov rcx, qword [rsp + 0x60]
call fcn.14004cc90
mov rdx, rax
mov byte [rsp + 0x40], 0
mov rax, qword [0x14013f5e0]
mov qword [rsp + 0x38], rax
mov rax, qword [rbp - 0x50]
mov dword [rsp + 0x30], eax
mov rax, qword [rbp - 0x10]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], esi
mov r9d, ebx
mov r8d, edi
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140072930
jmp 0x140057986
mov edx, 5
mov rcx, r8
call fcn.14004cc90
mov rsi, rax
mov edx, 4
mov rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.14004cc90
mov rbx, rax
mov edx, 3
mov rcx, rdi
call fcn.14004cc90
mov rdi, rax
mov edx, 2
mov rcx, qword [rsp + 0x60]
call fcn.14004cc90
mov rdx, rax
mov rax, qword [0x14013f5d0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], esi
mov r9d, ebx
mov r8d, edi
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140073eb0
jmp 0x140057986
mov edx, 2
mov rsi, r8
mov rcx, r8
call fcn.14004cc90
mov rdi, rax
mov edx, 1
mov rcx, rsi
call fcn.14004cc90
mov rdx, rax
mov r9, qword [0x14013f5b8]
mov r8d, edi
mov rcx, rsi
call fcn.14009fe40
jmp 0x140057986
mov rcx, qword [0x14013f5a0]
cmp word [rcx], 0
je case.0x1400574cb.3
xor eax, eax
mov edx, eax
cmp dil, 0x42
sete dl
xor r9d, r9d
mov r8d, dword [rsi + 0x114]
call fcn.14001e200
jmp case.0x1400574cb.3
mov rcx, qword [0x14013f5a0]
cmp word [rcx], 0
je case.0x1400574cb.3
mov r8d, 1
cmp dword [rsi + 0x114], 3
mov eax, 3
cmove r8d, eax
xor r9d, r9d
xor edx, edx
call fcn.14001e200
jmp case.0x1400574cb.3
mov rcx, qword [0x14013f5a0]
cmp word [rcx], 0
je case.0x1400574cb.3
xor r9d, r9d
xor edx, edx
lea r8d, [r9 + 2]
call fcn.14001e200
jmp case.0x1400574cb.3
mov rcx, qword [0x14013f5a0]
cmp word [rcx], 0
je case.0x1400574cb.3
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call fcn.14001e200
jmp case.0x1400574cb.3
mov rcx, qword [0x14013f5a0]
call fcn.140020ae0
mov rsi, qword [rsp + 0x60]
jmp 0x140057986
lea rax, [0x1401035ac]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rax
mov rax, qword [0x14013f5d0]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
movzx ecx, dil
call fcn.140020fe0
mov rsi, qword [rsp + 0x60]
jmp 0x140057986
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x48], rax
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x40], rax
mov rax, qword [0x14013f5d0]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x30], rax
lea rax, [0x1401035ac]
mov qword [rsp + 0x28], rax
jmp 0x140054de9
lea rcx, [0x1401035ac]
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x40], rcx
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14013f5b0]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rcx
mov r9, qword [0x14013f5a8]
mov r8, qword [0x14013f5a0]
mov rdx, rcx
jmp 0x140054e03
mov edx, 4
mov rsi, r8
mov rcx, r8
call fcn.14004cc90
mov rdx, rax
mov rcx, rsi
call fcn.140077b10
jmp 0x140057986
cmp dil, 0x78
sete al
xor ecx, ecx
mov dword [rsp + 0x38], ecx
mov qword [rsp + 0x30], rcx
mov byte [rsp + 0x28], al
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rcx, rsi
call fcn.1400e7e10
test rax, rax
je case.0x1400574cb.3
mov rax, qword [0x14013b0f8]
cmp dword [rax + 0x74], 0xffffffff
jle case.0x1400574cb.3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp dword [0x1401430c0], eax
mov rax, qword [0x14013b0f8]
mov ecx, dword [rax + 0x74]
jne 0x140054f3d
mov edx, 1
call fcn.140001b80
jmp case.0x1400574cb.3
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp case.0x1400574cb.3
mov r8d, 9
lea rdx, str.ahk_group
mov rcx, qword [0x14013f5a0]
call qword [sym.imp.MSVCR100.dll__wcsnicmp]
mov rcx, qword [0x14013f5b8]
mov r8, qword [0x14013f5a8]
test eax, eax
jne 0x140054f84
cmp word [r8], ax
jne 0x140054f84
cmp word [rcx], ax
jne 0x140054f84
mov dil, 1
jmp 0x140054f87
xor dil, dil
mov eax, reloc.OLEAUT32.dll_SafeArrayLock
test dil, dil
mov edx, 0
cmovne eax, edx
mov dword [rsp + 0x68], eax
mov r9, qword [rsp + 0x60]
movzx eax, byte [r9]
cmp al, 0x84
je 0x140054fb8
cmp al, 0x85
je 0x140054fb8
mov rax, qword [0x14013f5b0]
cmp word [rax], dx
jmp 0x140055004
mov rax, qword [0x14013f5b0]
cmp word [rax], dx
je 0x140054ff9
mov edx, 2
mov rcx, r9
call fcn.14004cd90
mulsd xmm0, qword [0x1401279c8]
cvttsd2si edx, xmm0
test edx, edx
mov eax, 0x1f4
cmove edx, eax
mov dword [rsp + 0x68], edx
mov rcx, qword [0x14013f5b8]
mov r8, qword [0x14013f5a8]
mov rax, qword [0x14013f5c0]
cmp word [rax], 0
jne 0x140055084
test dil, dil
je 0x140055084
mov rax, qword [0x14013f5a0]
lea rbx, [rax + 0x12]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140055025
cmp ax, 9
jne 0x14005502b
add rbx, 2
jmp 0x140055016
cmp word [rbx], 0
je 0x140055084
mov rdi, qword [0x140143170]
test rdi, rdi
je 0x140055084
nop dword [rax]
mov rdx, rbx
mov rcx, qword [rdi + 8]
call qword [sym.imp.MSVCR100.dll__wcsicmp]
test eax, eax
je 0x14005506a
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x140055040
mov rcx, qword [0x14013f5b8]
mov r8, qword [0x14013f5a8]
jmp 0x140055084
mov r8d, dword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
movzx edx, byte [rsi]
mov rcx, rdi
call fcn.1400ead70
jmp 0x140057986
mov r10, qword [rsp + 0x60]
movzx eax, byte [r10]
cmp al, 0x84
je 0x1400550b5
cmp al, 0x85
je 0x1400550b7
mov qword [rsp + 0x20], rcx
mov r9, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a0]
movzx ecx, al
call fcn.140067970
jmp 0x140054e0c
cmp al, 0x85
sete al
mov byte [rsp + 0x30], al
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov r9d, dword [rsp + 0x68]
mov rdx, qword [0x14013f5a0]
mov rcx, rsi
call fcn.1400e8230
test rax, rax
je case.0x1400574cb.3
mov rax, qword [0x14013b0f8]
cmp dword [rax + 0x74], 0xffffffff
jle case.0x1400574cb.3
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp dword [0x1401430c0], eax
mov rax, qword [0x14013b0f8]
mov ecx, dword [rax + 0x74]
jne 0x140054f3d
mov edx, 1
call fcn.140001b80
jmp case.0x1400574cb.3
mov rcx, qword [0x14013f5a8]
call fcn.140071a20
jmp 0x140054e0c
mov rdx, qword [0x14013f5a8]
mov rcx, qword [0x14013f5a0]
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
test eax, eax
mov rsi, qword [rsp + 0x60]
sete dl
mov rcx, rsi
call fcn.14005e3f0
jmp 0x140057986
lea rax, [rbp + 0x118]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x3a98
mov dword [rsp + 0x20], 1
lea r9, str.Environment
xor r8d, r8d
lea edx, [r8 + 0x1a]
mov ecx, 0xffff
call qword [sym.imp.USER32.dll_SendMessageTimeoutW]
test rax, rax
sete dl
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14005e3f0
jmp 0x140057986
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400a3c60
jmp 0x140057986
mov rdx, qword [0x14013f5a0]
test rdx, rdx
je 0x1400551e9
lea rcx, [0x140143d50]
call fcn.1400dd9a0
mov rdx, qword [0x14013f5a8]
test rdx, rdx
je 0x140055201
lea rcx, [0x140143d68]
call fcn.1400dd9a0
mov rdx, qword [0x14013f5b0]
test rdx, rdx
je case.0x1400574cb.3
lea rcx, [0x140143d80]
call fcn.1400dd9a0
jmp case.0x1400574cb.3
lea rdx, str.UseErrorLevel
mov rcx, qword [0x14013f5b0]
call fcn.1400e0a80
test rax, rax
setne dil
xor edx, edx
mov eax, edx
mov rsi, qword [rsp + 0x60]
cmp byte [rsi + 1], 3
cmova rax, qword [0x14013f518]
test dil, dil
sete cl
mov qword [rsp + 0x48], rax
mov byte [rsp + 0x40], 1
mov byte [rsp + 0x38], dil
mov qword [rsp + 0x30], rdx
mov rax, qword [0x14013f5b0]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], cl
mov r9, qword [0x14013f5a8]
xor r8d, r8d
mov rdx, qword [0x14013f5a0]
lea rcx, [0x140143150]
call fcn.140060b90
mov ebx, eax
test dil, dil
je 0x140057988
mov rsi, qword [0x140140268]
lea r10, str.ERROR
test eax, eax
lea rax, [0x140103674]
cmovne r10, rax
mov qword [rbp - 0x60], r10
movzx r8d, byte [rsi + 0x23]
test r8b, r8b
jne 0x1400552d9
mov byte [rsp + 0x20], 1
mov rdx, r10
jmp 0x140052fd6
mov r9b, 1
lea rdx, [0x1401035ac]
test r10, r10
jne 0x1400552f8
xor r9b, r9b
xor ecx, ecx
mov ebx, ecx
mov r10, rdx
mov qword [rbp - 0x60], rdx
jmp 0x14005531c
cmp qword [rsi + 8], r10
jne 0x140055307
mov rbx, qword [rsi + 0x10]
shr rbx, 1
jmp 0x14005531a
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r10
repne scasw ax, word [rdi]
not rcx
lea rbx, [rcx - 1]
xor ecx, ecx
lea rax, [rbx + 1]
lea rdi, [rax + rax]
cmp r8b, 2
jne 0x14005533a
mov rdx, rbx
mov rcx, r10
call fcn.140006bc0
jmp 0x140052fe6
mov r10, qword [0x14013b0d0]
cmp rdi, r10
jbe 0x140055354
cmp rdi, qword [rsi + 0x18]
jbe 0x140055354
mov r8, rdx
jmp 0x1400538db
cmp rax, 2
jae 0x14005536a
mov edx, ecx
test r9b, r9b
setne dl
add edx, 2
jmp 0x14005305d
movzx eax, byte [rsi + 0x21]
test al, 2
je 0x140055387
and al, 0x3d
mov byte [rsi + 0x21], al
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r10, qword [0x14013b0d0]
and byte [rsi + 0x21], 0x82
mov r8, qword [rsi + 0x18]
cmp rdi, r8
jbe 0x14005554b
movzx ecx, byte [rsi + 0x20]
movzx eax, cl
cmp cl, 1
jbe 0x1400553b4
cmp al, 2
je 0x140055400
mov rax, qword [rbp + 0xc8]
jmp 0x1400554ff
cmp rdi, 0x80
ja 0x140055400
cmp rdi, 8
ja 0x1400553ca
mov eax, 8
jmp 0x1400553db
mov eax, 0x80
cmp rdi, 0x10
mov ecx, reloc.WSOCK32.dll_recv
cmovbe eax, ecx
mov qword [rbp + 0x30], rax
mov rcx, rax
call fcn.1400dd290
mov qword [rbp + 0xc8], rax
test rax, rax
je 0x140052fe6
mov byte [rsi + 0x20], 1
jmp 0x1400554ff
cmp rdi, 0x20
jae 0x140055411
mov r9d, SafeArrayAllocDescriptor
jmp 0x1400554b6
cmp rdi, 0x208
jae 0x140055425
mov r9d, 0x208
jmp 0x1400554b6
cmp rdi, 0x50000
jae 0x140055472
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x140055441
addsd xmm0, xmm9
mulsd xmm0, xmm10
xor eax, eax
comisd xmm0, xmm8
jbe 0x140055468
subsd xmm0, xmm8
comisd xmm0, xmm8
jae 0x140055468
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r9, xmm0
add r9, rax
jmp 0x1400554b6
cmp rdi, 0x320000
jae 0x140055484
lea r9, [rdi + 0x8000]
jmp 0x1400554b6
cmp rdi, 0xc80000
jae 0x1400554af
mov r9, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r9, rdx
shr r9, 1
add r9, rdx
shr r9, 6
add r9, rdi
jmp 0x1400554b6
lea r9, [rdi + 0x20000]
cmp r9, r10
cmova r9, r10
mov qword [rbp + 0x30], r9
cmp cl, 2
jne 0x1400554de
test r8, r8
je 0x1400554de
mov dil, 1
mov rcx, qword [rsi + 8]
call qword [sym.imp.MSVCR100.dll_free]
mov r9, qword [rbp + 0x30]
jmp 0x1400554e1
xor dil, dil
test r9, r9
js 0x140055511
mov rcx, r9
call qword [sym.imp.MSVCR100.dll_malloc]
mov qword [rbp + 0xc8], rax
test rax, rax
je 0x140055511
mov byte [rsi + 0x20], 2
mov qword [rsi + 8], rax
mov rax, qword [rbp + 0x30]
mov qword [rsi + 0x18], rax
and byte [rsi + 0x21], 0x7f
jmp 0x14005554b
test dil, dil
je 0x140055529
xor eax, eax
mov qword [rsi + 0x18], rax
lea rcx, [0x140141fa8]
mov qword [rsi + 8], rcx
jmp 0x140055534
mov rax, qword [rsi + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
mov qword [rsi + 0x10], rax
lea r8, [0x1401035ac]
lea rdx, str.Out_of_memory.
jmp 0x1400538e2
mov rcx, qword [rsi + 8]
mov rdx, qword [rbp - 0x60]
cmp rcx, rdx
je 0x140053279
jmp 0x14005326f
mov rsi, r8
mov rcx, r8
call fcn.140067aa0
jmp 0x140057986
mov rsi, r8
cmp byte [r8 + 1], 2
jbe 0x1400555d1
mov rax, qword [0x14013f5d8]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14013f5d0]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b8]
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rcx, qword [0x14013f5a0]
call fcn.140068eb0
jmp 0x140057986
lea rax, [0x1401035ac]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5a8]
mov r8, qword [0x14013f5a0]
mov rdx, rax
mov rcx, rax
call fcn.140068eb0
jmp 0x140057986
mov rax, qword [0x14013f5f0]
mov qword [rsp + 0x58], rax
mov rax, qword [0x14013f5e8]
mov qword [rsp + 0x50], rax
mov rax, qword [0x14013f5e0]
mov qword [rsp + 0x48], rax
mov rax, qword [0x14013f5d8]
mov qword [rsp + 0x40], rax
mov rax, qword [0x14013f5d0]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400a0910
jmp 0x140057986
xor eax, eax
cmp dil, 0x47
sete al
mov dword [rsp + 0x38], eax
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140069040
jmp 0x140057986
xor r8d, r8d
mov dl, 1
mov rcx, qword [0x14013f5b8]
call fcn.14001db70
mov edi, eax
mov rsi, qword [rsp + 0x60]
test al, al
jne 0x140055723
mov r9, qword [0x14013f5b8]
xor r8d, r8d
lea rdx, str.Parameter_4_invalid.
mov rcx, rsi
call fcn.14005f3f0
jmp 0x140057986
mov rax, qword [0x14013f5c0]
cmp word [rax], 0
je 0x140055742
mov edx, 4
mov rcx, rsi
call fcn.14004cc90
mov rdx, rax
jmp 0x140055747
mov edx, 1
mov rax, qword [0x14013f5d8]
mov qword [rsp + 0x40], rax
mov rax, qword [0x14013f5d0]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14013f5b0]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5a8]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5a0]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5c8]
mov r8d, edx
movzx edx, dil
mov rcx, rsi
call fcn.140069420
jmp 0x140057986
mov rax, qword [0x14013f5e0]
mov qword [rsp + 0x48], rax
mov rax, qword [0x14013f5d8]
mov qword [rsp + 0x40], rax
mov rax, qword [0x14013f5d0]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140069f20
jmp 0x140057986
mov rax, qword [0x14013f5e0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5d8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5d0]
mov r8, qword [0x14013f5c8]
mov rdx, qword [0x14013f5c0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14006a450
jmp 0x140057986
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b8]
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14006a5d0
jmp 0x140057986
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14006ad60
jmp 0x140057986
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14006b160
jmp 0x140057986
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b8]
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14006b520
jmp 0x140057986
mov rax, qword [0x14013f5d0]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400a11b0
jmp 0x140057986
mov rax, qword [0x14013f5d8]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14013f5d0]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b8]
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400a2280
jmp 0x140057986
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5c0]
mov r8, qword [0x14013f5b8]
mov rdx, qword [0x14013f5b0]
mov rcx, qword [0x14013f5a8]
call fcn.14006c870
jmp 0x140054e0c
mov rax, qword [0x14013f5d8]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14013f5d0]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b8]
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rcx, qword [0x14013f5a0]
call fcn.14006c910
jmp 0x140054e0c
cmp dil, 0x92
sete dl
mov rsi, r8
mov rcx, r8
call fcn.14006ca70
jmp 0x140057986
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14006cf90
jmp 0x140057986
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14006def0
jmp 0x140057986
mov rsi, r8
cmp byte [r8 + 1], 1
jbe 0x140055b3b
mov rdi, qword [0x14013f5b0]
mov r9, qword [0x14013f5c0]
mov r8, qword [0x14013f5b8]
mov rdx, qword [0x14013f5a8]
mov rcx, qword [0x14013f5a0]
call fcn.140086740
jmp 0x140055b4e
mov rdi, qword [0x14013f5a0]
mov rcx, qword [0x14013b0f8]
call fcn.1400e8860
test rax, rax
je 0x140053d1b
mov rdx, rdi
mov rcx, rax
call qword [sym.imp.USER32.dll_SetWindowTextW]
jmp 0x140053d1b
mov r9, qword [0x14013f5c0]
mov r8, qword [0x14013f5b8]
mov rdx, qword [0x14013f5b0]
mov rcx, qword [0x14013f5a8]
call fcn.14006e3d0
jmp 0x140054e0c
mov r9, qword [0x14013f5c0]
mov r8, qword [0x14013f5b8]
mov rdx, qword [0x14013f5b0]
mov rcx, qword [0x14013f5a8]
call fcn.14006e830
jmp 0x140054e0c
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b8]
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14006ec60
jmp 0x140057986
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b8]
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400704f0
jmp 0x140057986
mov rax, qword [0x14013f5d8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5d0]
mov r8, qword [0x14013f5c8]
mov rdx, qword [0x14013f5c0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140070d70
jmp 0x140057986
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140071d60
jmp 0x140057986
xor edx, edx
lea rcx, str.Shell_TrayWnd
call qword [sym.imp.USER32.dll_FindWindowW]
mov r8d, 0x1a3
mov edx, 0x111
xor r9d, r9d
mov rcx, rax
call qword [sym.imp.USER32.dll_PostMessageW]
mov rdx, qword [0x14013b0f8]
cmp dword [rdx + 0x74], 0xffffffff
jmp 0x1400550f7
xor edx, edx
lea rcx, str.Shell_TrayWnd
call qword [sym.imp.USER32.dll_FindWindowW]
mov r8d, OleCreatePictureIndirect
jmp 0x140055c8e
mov rsi, r8
mov rax, qword [r8 + 0x10]
test rax, rax
jne 0x140055d0d
mov rdx, qword [0x14013f5a0]
cmp word [rdx], ax
je 0x140055d0d
lea rcx, [0x140143150]
call fcn.14003fe40
test rax, rax
jne 0x140055d0d
mov r9, qword [0x14013f5a0]
lea rdx, str.Target_label_does_not_exist.
xor r8d, r8d
mov rcx, rsi
call fcn.14005f3f0
jmp 0x140057986
mov qword [0x140143ca8], rax
jmp 0x140053d1b
xor eax, eax
mov rsi, r8
cmp byte [r8 + 1], 1
cmova rax, qword [0x14013f508]
mov qword [rsp + 0x20], rax
mov r9, qword [r8 + 0x10]
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rcx, qword [0x14013f5a0]
call fcn.140018120
jmp 0x140057986
mov rdi, qword [r8 + 0x10]
test rdi, rdi
jne 0x140055e31
xor r9d, r9d
mov r8, qword [0x14013f500]
mov rdx, qword [0x14013f5a0]
lea rcx, [0x140143150]
call fcn.14003feb0
mov rdi, rax
test rax, rax
jne 0x140055e31
mov r9, qword [0x14013f5a0]
cmp word [r9], ax
je 0x140055db2
xor r8d, r8d
lea rdx, str.Target_label_does_not_exist.
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14005f3f0
jmp 0x140057986
mov rax, qword [rsp + 0x60]
cmp byte [rax + 1], 0
jbe 0x140055dee
mov rax, qword [rax + 8]
mov rcx, qword [rax + 8]
cmp word [rcx], 0
je 0x140055dee
lea r9, [0x1401035ac]
xor r8d, r8d
lea rdx, str.Parameter_1_invalid.
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14005f3f0
jmp 0x140057986
mov rdi, qword [rsi + 0xe8]
test rdi, rdi
jne 0x140055e31
mov rdi, qword [rsi + 0xf0]
test rdi, rdi
je 0x140055e0e
mov rdi, qword [rdi]
test rdi, rdi
jne 0x140055e31
lea r9, [0x1401035ac]
xor r8d, r8d
lea rdx, str.Parameter_1_must_not_be_blank_in_this_case.
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14005f3f0
jmp 0x140057986
xor eax, eax
mov dword [rsp + 0x20], eax
mov ebx, 1
mov r9d, ebx
mov r8d, ebx
mov edx, ebx
mov rcx, qword [0x14013f5a8]
call fcn.1400e0470
test eax, eax
jne 0x140055ede
xor edx, edx
mov rcx, qword [0x14013f5a8]
call fcn.140016cb0
test eax, eax
jne 0x140055eb9
lea rdx, str.Delete
mov rcx, qword [0x14013f5a8]
call qword [sym.imp.MSVCR100.dll__wcsicmp]
test eax, eax
jne 0x140055e96
mov rdx, rdi
lea rcx, [0x140143150]
call fcn.14003fd10
jmp 0x140053290
mov r9, qword [0x14013f5a8]
xor r8d, r8d
lea rdx, str.Parameter_2_invalid.
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14005f3f0
jmp 0x140057986
jle 0x140055ede
cmp eax, 2
jg 0x140055ede
cmp eax, ebx
sete al
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], al
mov r9, qword [0x14013f5b0]
lea r8, [0x1401035ac]
jmp 0x140055f09
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
cmp word [r8], 0
jne 0x140055eff
cmp word [r9], 0
je 0x140055eff
movzx eax, bl
jmp 0x140055f01
xor eax, eax
mov byte [rsp + 0x28], al
mov byte [rsp + 0x20], bl
mov rdx, rdi
lea rcx, [0x140143150]
call fcn.14003fa20
jmp 0x140053290
mov edi, reloc.WSOCK32.dll_recv
mov rcx, qword [0x14013f5a0]
cmp word [rcx], 0
je 0x140055f57
lea rdx, [0x140120914]
call qword [sym.imp.MSVCR100.dll__wcsicmp]
test eax, eax
je 0x140055f57
xor edx, edx
mov rcx, qword [rsp + 0x60]
call fcn.14004cc90
mov rdi, rax
test eax, eax
jne 0x140055f57
xor eax, eax
jmp 0x140055f5c
mov eax, 1
mov byte [rsi + 0x12e], al
test al, al
je 0x140055f86
mov dword [rsi + 0x118], edi
mov byte [rsi + 0x12c], 0
mov qword [rsi], 0xffffffffffffffff
mov dword [rsi + 0x34], 0xffffffff
jmp case.0x1400574cb.3
mov dword [rsi + 0x118], 5
mov byte [rsi + 0x12c], 1
jmp case.0x1400574cb.3
mov rcx, qword [0x14013f5a0]
call fcn.140032250
mov edx, eax
dec edx
je 0x14005603f
dec edx
je 0x140055ff1
dec edx
jne case.0x1400574cb.3
mov rax, qword [0x14013f5a8]
cmp word [rax], dx
je 0x140055fe4
mov edi, 1
mov edx, edi
mov rcx, qword [rsp + 0x60]
call fcn.14004cc90
test rax, rax
jne 0x140055fe4
mov eax, edi
jmp 0x140055fe6
xor eax, eax
mov byte [rsi + 0x12d], al
jmp case.0x1400574cb.3
mov rax, qword [0x14013f5a8]
mov rdi, qword [rsp + 0x60]
cmp word [rax], 0
je 0x140056016
mov edx, 1
mov rcx, rdi
call fcn.14004cc90
mov dword [0x140143d44], eax
mov rax, qword [0x14013f5b0]
cmp word [rax], 0
je case.0x1400574cb.3
mov edx, 2
mov rcx, rdi
call fcn.14004cc90
mov dword [0x140143d40], eax
jmp case.0x1400574cb.3
mov edx, 1
mov rcx, qword [rsp + 0x60]
call fcn.14004cc90
mov dword [rsi + 0x3c], eax
jmp case.0x1400574cb.3
mov rsi, r8
mov rdi, qword [r8 + 0x10]
test rdi, rdi
jne 0x140056084
mov r8b, 1
mov rdx, qword [0x14013f5a0]
lea rcx, [0x140143150]
call fcn.14004e090
mov rdi, rax
test rax, rax
je 0x140057984
mov rdx, qword [0x14013f5b8]
cmp word [rdx], 0
je 0x1400560bb
mov rax, qword [rsi + 0x28]
test rax, rax
jne 0x1400560b7
lea rcx, [0x140143150]
call fcn.14003fe40
test rax, rax
jne 0x1400560b7
mov r9, qword [0x14013f5b8]
jmp 0x140055cf6
mov qword [rdi + 0x20], rax
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5c0]
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rcx, rdi
call fcn.1400eaac0
jmp 0x140057986
mov rsi, r8
mov rdi, qword [r8 + 0x10]
test rdi, rdi
jne 0x140056117
xor r8d, r8d
mov rdx, qword [0x14013f5a0]
lea rcx, [0x140143150]
call fcn.14004e090
mov rdi, rax
test rax, rax
je 0x140053d1b
mov rcx, qword [0x14013f5a8]
cmp word [rcx], 0
je 0x140056139
lea rdx, [0x14010805c]
call qword [sym.imp.MSVCR100.dll__wcsicmp]
test eax, eax
jne 0x140056139
mov dl, 1
jmp 0x14005613b
xor edx, edx
mov rcx, rdi
call fcn.1400eb1d0
jmp 0x140053d1b
mov rsi, r8
mov rdi, qword [r8 + 0x10]
test rdi, rdi
jne 0x140056176
xor r8d, r8d
mov rdx, qword [0x14013f5a0]
lea rcx, [0x140143150]
call fcn.14004e090
mov rdi, rax
test rax, rax
je 0x140053d1b
mov rcx, qword [0x14013f5a8]
cmp word [rcx], 0
je 0x1400561c8
lea rdx, [0x14011deb0]
call qword [sym.imp.MSVCR100.dll__wcsicmp]
test eax, eax
jne 0x1400561a6
xor r8d, r8d
mov dl, 0x84
mov rcx, rdi
call fcn.1400ead70
jmp 0x140053d1b
mov rcx, qword [0x14013f5a8]
cmp word [rcx], 0
je 0x1400561c8
lea rdx, [0x14010805c]
call qword [sym.imp.MSVCR100.dll__wcsicmp]
test eax, eax
jne 0x1400561c8
mov dl, 1
jmp 0x1400561ca
xor edx, edx
mov rcx, rdi
call fcn.1400eae70
jmp 0x140053d1b
mov rdx, qword [0x14013f5b0]
mov rcx, qword [0x14013f5a8]
call fcn.14007d4c0
jmp 0x140054e0c
test r10, r10
jne 0x140056215
mov edi, 1
mov edx, edi
mov rsi, r8
mov rcx, r8
call fcn.14004cc90
mov rcx, rax
call fcn.14002f2f0
mov ebx, edi
jmp 0x140057988
xor edi, edi
mov dword [rsp + 0x20], edi
mov ebx, 1
mov r9d, ebx
xor r8d, r8d
mov edx, ebx
mov rcx, qword [0x14013f5a8]
call fcn.1400e0470
cmp eax, 2
je 0x1400562d2
mov dword [rsp + 0x20], edi
mov r9d, ebx
xor r8d, r8d
mov edx, ebx
mov rcx, qword [0x14013f5b0]
call fcn.1400e0470
cmp eax, 2
je 0x1400562d2
mov rax, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
cmp word [rax], di
je 0x14005627a
mov edx, ebx
mov rcx, rsi
call fcn.14004cc90
mov rbx, rax
jmp 0x14005627c
mov ebx, edi
mov rax, qword [0x14013f5b0]
cmp word [rax], di
je 0x14005629a
mov edx, 2
mov rcx, rsi
call fcn.14004cc90
mov rdi, rax
jmp 0x14005629f
mov edi, 0x7fffffff
cmp ebx, edi
jle 0x1400562a9
mov eax, ebx
mov ebx, edi
mov edi, eax
call fcn.14002f440
mov edx, eax
movsxd rax, ebx
movsxd rcx, edi
sub rcx, rax
inc rcx
mov eax, edx
cqo
idiv rcx
add edx, ebx
movsxd rdx, edx
mov rcx, qword [rsp + 0x78]
jmp 0x140053d13
mov rax, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
cmp word [rax], di
je 0x1400562f3
mov edx, ebx
mov rcx, rsi
call fcn.14004cd90
movapd xmm7, xmm0
jmp 0x1400562f8
movapd xmm7, xmm11
mov rax, qword [0x14013f5b0]
cmp word [rax], di
je 0x140056317
mov edx, 2
mov rcx, rsi
call fcn.14004cd90
movapd xmm6, xmm0
jmp 0x14005631f
movsd xmm6, qword [0x140128008]
comisd xmm7, xmm6
jbe 0x140056331
movapd xmm0, xmm7
movapd xmm7, xmm6
movapd xmm6, xmm0
call fcn.14002f4a0
subsd xmm6, xmm7
mulsd xmm0, xmm6
addsd xmm0, xmm7
movsd qword [rbp - 0x50], xmm0
mov r8b, 0x28
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rsp + 0x78]
call fcn.140001090
jmp 0x140057988
mov r8b, 1
mov rdx, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14007db80
jmp 0x140057986
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14007dfe0
jmp 0x140057986
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14007e2b0
jmp 0x140057986
mov rdx, qword [0x14013f5a0]
cmp dil, 0x9d
mov eax, 0
cmove rdx, rax
mov r9, qword [0x14013f5b8]
mov r8, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14007fdc0
jmp 0x140057986
mov rax, qword [0x14013f5a8]
mov rsi, r8
cmp word [rax], 0
je 0x140056415
mov edx, 1
mov rcx, r8
call fcn.14004cc90
dec eax
jmp 0x140056417
xor eax, eax
movsxd r8, eax
test eax, eax
mov eax, 0
cmovs r8, rax
mov rcx, rsi
cmp byte [rsi], 0x9f
jne 0x14005643a
mov rdx, r8
call fcn.140081a10
jmp 0x140057986
mov rdx, qword [0x14013f5a0]
call fcn.140081da0
jmp 0x140057986
mov rax, qword [0x14013f5a8]
mov rsi, r8
cmp word [rax], 0
je 0x14005646d
mov edx, 1
mov rcx, r8
call fcn.14004cc90
mov rdi, rax
jmp 0x140056472
mov edi, 0x96
mov rax, qword [0x14013f5a0]
cmp word [rax], 0
je 0x14005648b
xor edx, edx
mov rcx, rsi
call fcn.14004cc90
jmp 0x140056490
mov eax, 0x20b
mov edx, edi
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_Beep]
jmp 0x140053d1b
mov rcx, qword [0x14013f5a8]
cmp word [rcx], 0
je 0x1400564c4
lea rdx, str.wait
call qword [sym.imp.MSVCR100.dll__wcsicmp]
test eax, eax
je 0x1400564da
mov rcx, qword [0x14013f5a8]
lea rdx, [0x14010771c]
call qword [sym.imp.MSVCR100.dll__wcsicmp]
test eax, eax
je 0x1400564da
xor r8d, r8d
jmp 0x1400564dd
mov r8b, 1
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140082210
jmp 0x140057986
cmp byte [r8 + 1], 2
jae 0x140056503
mov r9, qword [rsi + 0x20]
jmp 0x140056508
xor eax, eax
mov r9d, eax
mov r8, qword [0x14013f5a0]
mov rdx, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140084ba0
jmp 0x140057986
mov rdx, qword [0x14013f5a8]
mov rsi, r8
mov rcx, r8
call fcn.140083d60
jmp 0x140057986
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400845a0
jmp 0x140057986
mov rdx, qword [0x14013f5a0]
mov rsi, r8
mov rcx, r8
call fcn.140085020
jmp 0x140057986
mov rdx, qword [0x14013f5a0]
mov rsi, r8
mov rcx, r8
call fcn.1400a65d0
jmp 0x140057986
xor eax, eax
mov edx, eax
mov rax, qword [0x14013f5a0]
cmp word [rax], dx
cmovne rdx, rax
xor ecx, ecx
lea r8d, [rcx + 7]
call qword [sym.imp.SHELL32.dll_SHEmptyRecycleBinW]
test eax, eax
setne dl
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14005e3f0
jmp 0x140057986
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140085120
jmp 0x140057986
lea rdi, [rsi + 0x40]
mov edx, 2
mov rsi, r8
mov rcx, r8
call fcn.14004cc90
cmp eax, 1
sete r8b
mov qword [rsp + 0x20], rdi
xor r9d, r9d
mov rdx, qword [0x14013f5a8]
mov rcx, qword [0x14013f5a0]
call fcn.1400a7080
test eax, eax
jne 0x140056673
xor r9d, r9d
or r8, 0xffffffffffffffff
lea rdx, [0x140103674]
mov rcx, qword [0x140140268]
jmp 0x140054329
lea rdi, [rsi + 0x40]
mov edx, 2
mov rsi, r8
mov rcx, r8
call fcn.14004cc90
cmp eax, 1
sete r8b
mov qword [rsp + 0x20], rdi
mov r9b, 1
mov rdx, qword [0x14013f5a8]
mov rcx, qword [0x14013f5a0]
call fcn.1400a7080
mov edx, eax
mov rcx, rsi
call fcn.14005ec90
jmp 0x140057986
mov edx, 2
mov rsi, r8
mov rcx, r8
call fcn.14004cc90
cmp eax, 1
sete r8b
mov rdx, qword [0x14013f5a8]
mov rcx, qword [0x14013f5a0]
call fcn.1400a6b30
test al, al
sete dl
mov rcx, rsi
call fcn.14005e3f0
jmp 0x140057986
mov rax, qword [0x14013f5b0]
movzx ecx, word [rax]
call fcn.140016bd0
cmp ax, 0x52
jne 0x1400566ec
mov rdx, qword [0x14013f5a8]
mov rcx, qword [0x14013f5a0]
call qword [sym.imp.KERNEL32.dll_MoveFileW]
jmp 0x14005514d
mov edx, 2
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.14004cc90
mov r8, rax
mov rdx, qword [0x14013f5a8]
mov rcx, qword [0x14013f5a0]
call fcn.1400a6cf0
test al, al
jmp 0x140055154
mov rdx, qword [0x14013f5a0]
mov rsi, r8
mov rcx, r8
call fcn.140083bd0
jmp 0x140057986
mov rax, qword [0x14013f5a0]
mov rsi, r8
cmp word [rax], 0
je 0x14005676c
mov edx, 1
mov rcx, r8
call fcn.14004cc90
cmp eax, 1
sete dl
mov rcx, qword [0x14013f5a0]
call fcn.1400a6f90
test al, al
je 0x14005676c
xor edx, edx
jmp 0x140055157
mov dl, 1
jmp 0x140055157
mov rdx, qword [0x14013f5a8]
cmp word [rdx], 0
jne 0x140056796
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x14005678f
add rdx, 0x2c
jmp 0x140056796
lea rdx, [0x1401035ac]
mov rsi, r8
mov rcx, r8
call fcn.140085380
jmp 0x140057986
mov rbx, qword [0x14013f5a8]
cmp word [rbx], 0
jne 0x1400567c9
mov rbx, qword [rsi + 0x10]
test rbx, rbx
je 0x1400567c2
add rbx, 0x2c
jmp 0x1400567c9
lea rbx, [0x1401035ac]
mov edx, 3
mov rcx, r8
call fcn.14004cc90
cmp eax, 1
sete dil
mov rcx, qword [0x14013f5b0]
call fcn.1400330e0
mov r9d, eax
mov byte [rsp + 0x20], dil
mov r8, rbx
mov rdx, qword [0x14013f5a0]
mov rcx, qword [rsp + 0x60]
call fcn.140085740
xor eax, eax
mov ebx, eax
cmp qword [rsi + 0x148], rax
sete bl
jmp 0x140053290
mov rdx, qword [0x14013f5a8]
cmp word [rdx], 0
jne 0x14005683b
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x140056834
add rdx, 0x2c
jmp 0x14005683b
lea rdx, [0x1401035ac]
mov rax, qword [0x14013f5b0]
movzx r8d, word [rax]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140085e20
jmp 0x140057986
mov rbx, qword [0x14013f5a8]
cmp word [rbx], 0
jne 0x14005687b
mov rbx, qword [rsi + 0x10]
test rbx, rbx
je 0x140056874
add rbx, 0x2c
jmp 0x14005687b
lea rbx, [0x1401035ac]
mov edx, 4
mov rcx, r8
call fcn.14004cc90
cmp eax, 1
sete dil
mov rcx, qword [0x14013f5b8]
call fcn.1400330e0
mov byte [rsp + 0x28], dil
mov dword [rsp + 0x20], eax
mov rax, qword [0x14013f5b0]
movzx r9d, word [rax]
mov r8, rbx
mov rdx, qword [0x14013f5a0]
mov rcx, qword [rsp + 0x60]
call fcn.1400862a0
xor eax, eax
mov ebx, eax
cmp qword [rsi + 0x148], rax
sete bl
jmp 0x140053290
mov rdx, qword [0x14013f5a8]
cmp word [rdx], 0
jne 0x1400568f9
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x1400568f2
add rdx, 0x2c
jmp 0x1400568f9
lea rdx, [0x1401035ac]
mov r8, qword [0x14013f5b0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140086490
jmp 0x140057986
mov rdx, qword [0x14013f5a8]
cmp word [rdx], 0
jne 0x140056935
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x14005692e
add rdx, 0x2c
jmp 0x140056935
lea rdx, [0x1401035ac]
mov rsi, r8
mov rcx, r8
call fcn.1400a66c0
jmp 0x140057986
mov rcx, qword [0x14013f5a0]
call fcn.1400826e0
xor eax, eax
mov ebx, eax
cmp qword [rsi + 0x148], rax
sete bl
jmp 0x140053290
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b8]
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140082ad0
jmp 0x140057986
mov r9, qword [0x14013f5b8]
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400a40f0
jmp 0x140057986
mov rdx, qword [0x14013f5a0]
mov rsi, r8
mov rcx, r8
call fcn.1400a4cc0
jmp 0x140057986
mov rax, qword [0x14013f5e0]
mov qword [rsp + 0x48], rax
mov rax, qword [0x14013f5d8]
mov qword [rsp + 0x40], rax
mov rax, qword [0x14013f5d0]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400a60a0
jmp 0x140057986
mov ecx, 4
call fcn.140076310
jmp 0x140054e0c
mov edx, 7
mov rcx, qword [0x14013f5a0]
call fcn.140016cb0
mov edx, eax
cmp eax, 7
jne 0x140056a78
lea ecx, [rax - 6]
call fcn.140076310
jmp 0x140054e0c
cmp byte [rsi + 0x139], 0
je 0x140056aad
mov eax, dword [0x1401405f8]
test eax, eax
jle 0x140056a8f
dec eax
jmp 0x140056a94
mov eax, 0x18f
mov dword [0x1401405f8], eax
cdqe
xor ecx, ecx
lea r11, [0x140000000]
mov qword [r11 + rax*8 + 0x140600], rcx
cmp edx, 1
sete al
mov byte [rsi + 0x139], al
jmp case.0x1400574cb.3
mov ecx, 2
call fcn.140076310
jmp 0x140054e0c
mov ecx, 3
call fcn.140076310
jmp 0x140054e0c
mov rcx, qword [0x14013b0f8]
add rcx, 0x68
call fcn.1400b1320
xor ebx, ebx
test rax, rax
je 0x140056b04
mov rax, qword [0x14013b0f8]
mov rcx, qword [rax + 0x68]
mov rdi, qword [rcx + 8]
jmp 0x140056b07
mov rdi, rbx
mov rsi, qword [rsp + 0x60]
movzx eax, byte [rsi + 1]
test al, al
jne 0x140056b2a
movapd xmm3, xmm11
xor r8d, r8d
mov edx, 0x10000
lea rcx, str.Press_OK_to_continue.
jmp 0x140056b74
cmp al, 1
jne 0x140056b44
movapd xmm3, xmm11
xor r8d, r8d
mov edx, 0x10000
mov rcx, qword [0x14013f5a0]
jmp 0x140056b74
mov edx, 3
mov rcx, rsi
call fcn.14004cd90
movapd xmm6, xmm0
xor edx, edx
mov rcx, rsi
call fcn.14004cc90
mov rdx, rax
movapd xmm3, xmm6
mov r8, qword [0x14013f5a8]
mov rcx, qword [0x14013f5b0]
mov qword [rsp + 0x20], rdi
call fcn.1400e9900
mov edi, eax
test eax, eax
jne 0x140056ba6
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x59e
jne 0x140056ba4
mov r9, qword [0x14013f5a0]
lea rdx, str.Parameter_1_invalid.
jmp 0x140055cfd
test edi, edi
setne bl
jmp 0x140057988
mov rax, qword [0x14013f5d8]
cmp word [rax], 0
je 0x140056bd3
mov edx, 7
mov rcx, r8
call fcn.14004cc90
mov qword [rbp + 0x50], rax
mov r8, qword [rsp + 0x60]
jmp 0x140056bda
mov dword [rbp + 0x50], 0x80000000
mov rax, qword [0x14013f5d0]
cmp word [rax], 0
je 0x140056bf9
mov edx, 6
mov rcx, r8
call fcn.14004cc90
mov rsi, rax
jmp 0x140056bfe
mov esi, 0x80000000
mov rax, qword [0x14013f5c8]
mov rdi, qword [rsp + 0x60]
cmp word [rax], 0
je 0x140056c22
mov edx, 5
mov rcx, rdi
call fcn.14004cc90
mov rbx, rax
jmp 0x140056c27
mov ebx, 0x80000000
mov rax, qword [0x14013f5c0]
cmp word [rax], 0
je 0x140056c46
mov edx, 4
mov rcx, rdi
call fcn.14004cc90
mov rdi, rax
jmp 0x140056c4b
mov edi, 0x80000000
mov edx, 9
mov rcx, qword [rsp + 0x60]
call fcn.14004cd90
movapd xmm6, xmm0
mov rax, qword [0x14013f5b8]
movzx ecx, word [rax]
call fcn.140016bd0
cmp ax, 0x48
sete r9b
mov rax, qword [0x14013f5f0]
mov qword [rsp + 0x48], rax
movsd qword [rsp + 0x40], xmm6
mov rax, qword [rbp + 0x50]
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], edi
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rcx, qword [rsp + 0x78]
call fcn.140076610
jmp 0x140054e0c
mov rax, qword [0x14013f5a8]
mov rsi, r8
cmp word [rax], 0
je 0x140056cda
mov edx, 1
mov rcx, r8
call fcn.14004cc90
mov rdi, rax
jmp 0x140056cde
xor eax, eax
mov edi, eax
mov rax, qword [0x14013f5a0]
cmp word [rax], 0
je 0x140056cf7
xor edx, edx
mov rcx, rsi
call fcn.14004cc90
jmp 0x140056cfc
mov eax, 0xc8
mov r9, qword [0x14013f5b8]
mov r8, qword [0x14013f5b0]
mov edx, edi
mov ecx, eax
call fcn.1400a05a0
jmp 0x140057986
mov rcx, qword [0x14013f710]
test rcx, rcx
je 0x140056d3b
call qword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x140056d3b
mov rcx, qword [0x14013f710]
call qword [sym.imp.USER32.dll_DestroyWindow]
xor eax, eax
mov qword [0x14013f710], rax
jmp case.0x1400574cb.3
mov byte [rsp + 0x38], 0
lea rax, [0x1401035ac]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140061900
jmp 0x140057986
mov byte [rsp + 0x38], 1
mov rax, qword [0x14013f5a0]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b8]
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140061900
jmp 0x140057986
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.140063050
jmp 0x140057986
mov r9, qword [0x14013f5b8]
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rcx, qword [0x14013f5a0]
call fcn.1400634d0
jmp 0x140054e0c
mov rsi, r8
mov rcx, r8
call fcn.140065840
jmp 0x140057986
mov rcx, qword [0x14013f5a8]
call fcn.140033440
movzx edi, ax
mov rcx, qword [0x14013f5a0]
call fcn.1400334d0
movzx ecx, ax
cmp ecx, 0xffffffff
je case.0x1400574cb.3
movzx eax, di
cmp eax, 0xffffffff
je case.0x1400574cb.3
mov eax, 3
shl ax, cl
not ax
and ax, word [rsi + 0x130]
shl di, cl
or ax, di
mov word [rsi + 0x130], ax
jmp case.0x1400574cb.3
xor edx, edx
mov rcx, r8
call fcn.14004cc90
cmp al, 0x64
movzx eax, al
mov ecx, 2
cmova eax, ecx
mov byte [rsi + 0x12f], al
jmp case.0x1400574cb.3
mov edx, dword [rsi + 0x114]
mov rcx, qword [0x14013f5a0]
call fcn.140033010
mov dword [rsi + 0x114], eax
jmp case.0x1400574cb.3
xor edx, edx
mov rcx, r8
call fcn.14004cc90
cmp eax, 0x64
ja case.0x1400574cb.3
mov byte [rsi + 0x136], al
jmp case.0x1400574cb.3
lea rdx, str.Play
mov rcx, qword [0x14013f5b0]
call qword [sym.imp.MSVCR100.dll__wcsicmp]
test eax, eax
mov rax, qword [0x14013f5a0]
mov rdi, qword [rsp + 0x60]
jne 0x140056f69
cmp word [rax], 0
je 0x140056f40
xor edx, edx
mov rcx, rdi
call fcn.14004cc90
mov dword [rsi + 0x80], eax
mov rax, qword [0x14013f5a8]
cmp word [rax], 0
je case.0x1400574cb.3
mov edx, 1
mov rcx, rdi
call fcn.14004cc90
mov dword [rsi + 0x88], eax
jmp case.0x1400574cb.3
cmp word [rax], 0
je 0x140056f7c
xor edx, edx
mov rcx, rdi
call fcn.14004cc90
mov dword [rsi + 0x7c], eax
mov rax, qword [0x14013f5a8]
cmp word [rax], 0
je case.0x1400574cb.3
mov edx, 1
mov rcx, rdi
call fcn.14004cc90
mov dword [rsi + 0x84], eax
jmp case.0x1400574cb.3
lea rdx, str.Play
mov rcx, qword [0x14013f5a8]
call qword [sym.imp.MSVCR100.dll__wcsicmp]
xor edx, edx
mov rcx, qword [rsp + 0x60]
test eax, eax
jne 0x140056fd4
call fcn.14004cc90
mov dword [rsi + 0x90], eax
jmp case.0x1400574cb.3
call fcn.14004cc90
mov dword [rsi + 0x8c], eax
jmp case.0x1400574cb.3
xor edx, edx
mov rcx, r8
call fcn.14004cc90
mov dword [rsi + 0x74], eax
jmp case.0x1400574cb.3
xor edx, edx
mov rcx, r8
call fcn.14004cc90
mov dword [rsi + 0x78], eax
jmp case.0x1400574cb.3
lea rdx, [0x14011e42c]
mov rcx, qword [0x14013f5a0]
call fcn.1400e0a80
xor edx, edx
mov rcx, qword [rsp + 0x60]
test rax, rax
je 0x14005703b
mov qword [rsi], 0xffffffffffffffff
call fcn.14004cc90
mov dword [rsi + 0x34], eax
jmp case.0x1400574cb.3
mov dword [rsi + 0x34], 0xffffffff
call fcn.14004cc90
mov qword [rsi], rax
test rax, rax
jne case.0x1400574cb.3
mov qword [rsi], 0xa
jmp case.0x1400574cb.3
mov edx, 7
mov rcx, qword [0x14013f5a0]
call fcn.140016cb0
cmp eax, 7
je case.0x1400574cb.3
cmp eax, 1
sete al
mov byte [rsi + 0x133], al
jmp case.0x1400574cb.3
mov rcx, qword [0x14013f5a0]
call fcn.140031070
dec eax
cmp eax, 5
ja case.default.0x1400570b5
cdqe
lea r11, [0x140000000]
mov ecx, dword [r11 + rax*4 + 0x582a8]
add rcx, r11
jmp rcx
mov eax, 1
mov dword [rsi + 0x30], eax
jmp 0x140054e0c
mov eax, 2
mov dword [rsi + 0x30], eax
jmp case.0x1400574cb.3
mov dword [rsi + 0x30], 4
jmp case.0x1400574cb.3
mov eax, 3
mov dword [rsi + 0x30], eax
jmp case.0x1400574cb.3
mov byte [rsi + 0x129], 1
jmp case.0x1400574cb.3
mov byte [rsi + 0x129], 0
jmp case.0x1400574cb.3
mov r8d, 5
lea rdx, str.Float
mov rcx, qword [0x14013f5a0]
call qword [sym.imp.MSVCR100.dll__wcsnicmp]
test eax, eax
jne 0x1400571f6
mov ebx, 1
mov edx, ebx
mov rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.14004cbc0
cmp rax, 0x1e
jb 0x140057146
mov rsi, rdi
jmp 0x140057988
mov edx, ebx
mov rcx, rdi
call fcn.14004cc90
mov rbx, rax
mov edx, 0x2e
mov rcx, qword [0x14013f5a8]
call qword [sym.imp.MSVCR100.dll_wcschr]
mov rdi, rax
test rax, rax
je 0x14005717a
lea rcx, [rax + 2]
call fcn.1400050b0
xor ecx, ecx
jmp 0x14005717e
xor ecx, ecx
mov eax, ecx
lea rax, [rbx + rax + 2]
cmp rax, 0xff
jg case.0x1400574cb.3
mov dword [rsp + 0x20], ecx
mov eax, 1
mov r9d, eax
mov r8d, eax
mov edx, eax
mov rcx, qword [0x14013f5a8]
call fcn.1400e0470
lea rcx, [0x1401035ac]
mov rdx, rcx
test eax, eax
lea rax, [0x14012094c]
cmovne rdx, rax
lea r9, [0x14011f224]
test rdi, rdi
cmovne r9, rcx
lea rcx, [rsi + 0x94]
mov qword [rsp + 0x20], rdx
mov r8, qword [0x14013f5a8]
lea rdx, [0x140120950]
call qword [sym.imp.MSVCR100.dll__swprintf]
jmp case.0x1400574cb.3
mov r8d, 7
lea rdx, str.Integer
mov rcx, qword [0x14013f5a0]
call qword [sym.imp.MSVCR100.dll__wcsnicmp]
test eax, eax
jne case.0x1400574cb.3
mov rcx, qword [0x14013f5a8]
movzx eax, word [rcx]
cmp eax, 0x44
je 0x140057248
cmp eax, 0x48
je 0x14005723a
cmp eax, 0x64
je 0x140057248
cmp eax, 0x68
jne case.0x1400574cb.3
movzx eax, byte [rcx]
mov byte [rsi + 0x135], al
jmp case.0x1400574cb.3
mov byte [rsi + 0x135], 0x44
jmp case.0x1400574cb.3
mov rdx, qword [0x14013f5b0]
mov rcx, qword [0x14013f5a8]
call fcn.140078220
jmp 0x140054e0c
mov rsi, r8
movzx ecx, byte [r8 + 1]
xor eax, eax
mov edx, eax
cmp cl, 4
cmova rdx, qword [0x14013f520]
cmp cl, 3
cmova rax, qword [0x14013f518]
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x38], rax
mov rax, qword [0x14013f5c8]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14013f5c0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
lea rcx, [0x140143150]
call fcn.1400c8ea0
jmp 0x140057986
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
lea rcx, [0x140143150]
call fcn.1400b13c0
jmp 0x140054e0c
xor eax, eax
mov rsi, r8
cmp byte [r8 + 1], 2
cmova rax, qword [0x14013f510]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rcx, rsi
call fcn.1400b1eb0
jmp 0x140057986
mov r9, qword [0x14013f5b8]
mov r8, qword [0x14013f5b0]
mov rdx, qword [0x14013f5a8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400b35f0
jmp 0x140057986
mov rcx, qword [0x14013f5a0]
call fcn.140032eb0
mov edx, eax
test eax, eax
je case.default.0x1400570b5
dec edx
je 0x1400573ab
dec edx
je 0x14005739c
sub edx, 3
je 0x1400573b8
cmp edx, 2
jmp 0x1400573b2
cmp byte [0x14013f888], 0
je case.0x1400574cb.3
jmp 0x1400573b8
cmp byte [0x14013f888], 0
jne case.0x1400574cb.3
call fcn.14005dff0
jmp case.0x1400574cb.3
mov edx, 1
mov rsi, r8
mov rcx, r8
call fcn.14004cc90
test eax, eax
setne dil
mov rcx, qword [0x14013f5a0]
call fcn.140016d60
mov edx, eax
movzx r8d, dil
mov rcx, rsi
call fcn.14005e060
jmp 0x140057986
mov edx, 7
mov rcx, qword [0x14013f5a0]
call fcn.140016cb0
cmp eax, 7
je case.0x1400574cb.3
cmp eax, 1
sete al
mov byte [rsi + 0x134], al
jmp case.0x1400574cb.3
mov rcx, qword [0x14013f5a0]
call fcn.140032e10
mov byte [rsi + 0x132], al
cmp al, 4
jne case.0x1400574cb.3
mov byte [rsi + 0x132], 0
jmp case.0x1400574cb.3
mov edx, 7
mov rcx, qword [0x14013f5a0]
call fcn.140016cb0
cmp eax, 7
je case.0x1400574cb.3
cmp eax, 1
sete al
mov byte [rsi + 0x12a], al
jmp case.0x1400574cb.3
mov edx, 7
mov rcx, qword [0x14013f5a0]
call fcn.140016cb0
cmp eax, 7
je case.0x1400574cb.3
cmp eax, 1
sete al
mov byte [rsi + 0x12b], al
jmp case.0x1400574cb.3
mov rcx, qword [0x14013f5a0]
call fcn.140032f30
mov edx, eax
dec eax
cmp eax, 0xc
ja case.0x1400574cb.3
cdqe
lea r11, [0x140000000]
mov ecx, dword [r11 + rax*4 + 0x582c0]
add rcx, r11
jmp rcx
mov cl, 1
call fcn.14005e140
jmp case.0x1400574cb.3
xor ecx, ecx
call fcn.14005e140
jmp case.0x1400574cb.3
mov dword [reloc.WSOCK32.dll_inet_ntoa], edx
jmp case.0x1400574cb.3
mov byte [0x140140265], 1
or byte [0x140140266], 2
cmp qword [0x14013f850], 0
jne case.0x1400574cb.3
mov rax, qword [0x14013ccd8]
movzx ecx, word [rax]
call fcn.140015200
jmp case.0x1400574cb.3
mov byte [0x140140265], 0
jmp case.0x1400574cb.3
mov r8, qword [0x14013f5a0]
lea rdx, str._a_a_a_v
mov cl, 0x90
call fcn.140086660
jmp 0x140054e0c
mov r8, qword [0x14013f5a0]
lea rdx, [0x14013b1d0]
mov cl, reloc.OLEAUT32.dll_SafeArrayLock
call fcn.140086660
jmp 0x140054e0c
mov r8, qword [0x14013f5a0]
lea rdx, [0x14013b1d4]
mov cl, 0x91
call fcn.140086660
jmp 0x140054e0c
lea rcx, [0x140143150]
call fcn.140035850
jmp case.0x1400574cb.3
mov dl, 1
lea rcx, [0x140143150]
call fcn.140035a70
jmp case.0x1400574cb.3
xor edx, edx
mov rsi, r8
mov rcx, r8
call fcn.14004cc90
cmp dword [0x1401430c0], ebx
je 0x1400575c5
cmp eax, 0xffffffff
jle 0x1400575c5
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140053d1b
mov edx, 1
mov ecx, eax
call fcn.140001b80
jmp 0x140053d1b
mov r9, qword [0x14013f5c0]
mov r8, qword [0x14013f5b8]
mov rdx, qword [0x14013f5b0]
mov rcx, qword [0x14013f5a8]
call fcn.1400d6840
jmp 0x140054e0c
mov rax, qword [0x14013f5b8]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14013f5b0]
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400d6d70
jmp 0x140057986
mov r9, qword [0x14013f5b0]
mov rsi, r8
cmp byte [r8 + 1], 3
mov eax, 0
cmovb r9, rax
mov r8, qword [0x14013f5a8]
mov rdx, qword [0x14013f5a0]
mov rcx, rsi
call fcn.1400d6eb0
jmp 0x140057986
cmp byte [r8 + 1], 2
jae 0x140057693
mov rdx, qword [rsi + 0x18]
test rdx, rdx
je 0x140057693
lea r9, [rdx + 0x810]
lea r8, [rdx + 0x10]
mov rdx, qword [rdx + 8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400d6f30
jmp 0x140057986
lea r9, [rbp - 0x80]
lea r8, [rbp - 0x38]
mov edx, 2
mov rcx, qword [0x14013f5a8]
call fcn.1400306b0
mov rdi, rax
mov r8, qword [rbp - 0x38]
test r8, r8
jne 0x1400576cc
mov r8, qword [0x14013f5b0]
mov qword [rbp - 0x38], r8
mov r9, qword [0x14013f5b8]
jmp 0x1400576d3
mov r9, qword [0x14013f5b0]
mov rdx, rax
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400d6f30
mov ebx, eax
cmp byte [rbp - 0x80], 0
je 0x140057988
test rdi, rdi
je 0x140057988
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x140057988
cmp byte [r8 + 1], 2
jae 0x14005774e
mov rdx, qword [rsi + 0x18]
test rdx, rdx
je 0x14005774e
lea rcx, [rdx + 0x810]
lea r9, [rdx + 0x10]
mov rax, qword [0x14013f5a0]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov r8, qword [rdx + 8]
mov edx, dword [rdx + 0x1010]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400d7360
jmp 0x140057986
lea r9, [rbp - 0x80]
lea r8, [rbp - 0x38]
mov edx, 2
mov rcx, qword [0x14013f5a8]
call fcn.1400306b0
mov qword [rbp - 0x50], rax
mov rdi, qword [rbp - 0x38]
test rdi, rdi
jne 0x14005778f
mov rdi, qword [0x14013f5b0]
mov qword [rbp - 0x38], rdi
mov rbx, qword [0x14013f5b8]
mov rsi, qword [0x14013f5c0]
jmp 0x14005779d
mov rbx, qword [0x14013f5b0]
mov rsi, qword [0x14013f5b8]
mov rcx, qword [0x14013f5a0]
call fcn.140030910
mov edx, eax
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rbx
mov r9, rdi
mov rdi, qword [rbp - 0x50]
mov r8, rdi
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400d7360
jmp 0x1400576e3
cmp byte [r8 + 1], 1
jae 0x14005785c
mov rax, qword [rsi + 0x18]
test rax, rax
je 0x14005785c
cmp dword [rax + 0x1010], 0xfffffffe
jne 0x140057833
lea r9, [rax + 0x10]
cmp word [r9], 0
je 0x140057825
add rax, 0x810
mov qword [rsp + 0x20], rax
lea r8, [0x140120898]
mov edx, 0x400
lea rcx, [rbp + 0x160]
call fcn.1400e0640
lea r8, [rbp + 0x160]
jmp 0x14005782c
lea r8, [rax + 0x810]
xor eax, eax
mov r9d, eax
jmp 0x14005783e
lea r8, [rax + 0x10]
lea r9, [rax + 0x810]
mov qword [rbp - 0x38], r8
mov rdx, qword [rsi + 0x18]
mov rdx, qword [rdx + 8]
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
call fcn.1400d7820
jmp 0x140057986
lea r9, [rbp - 0x80]
lea r8, [rbp - 0x38]
mov edx, 2
mov rcx, qword [0x14013f5a0]
call fcn.1400306b0
mov rsi, rax
mov rbx, qword [rbp - 0x38]
test rbx, rbx
jne 0x140057895
mov rbx, qword [0x14013f5a8]
mov qword [rbp - 0x38], rbx
mov rdi, qword [0x14013f5b0]
jmp 0x14005789c
mov rdi, qword [0x14013f5a8]
cmp word [rdi], 0
jne 0x1400578a9
xor eax, eax
mov r9d, eax
jmp 0x1400578c6
lea rdx, str.ahk_default
mov rcx, rdi
call qword [sym.imp.MSVCR100.dll__wcsicmp]
lea r9, [0x1401035ac]
test eax, eax
cmovne r9, rdi
mov r8, rbx
mov rdx, rsi
mov rcx, qword [rsp + 0x60]
call fcn.1400d7820
mov ebx, eax
cmp byte [rbp - 0x80], 0
je 0x140053290
test rsi, rsi
je 0x140053290
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x140053290
mov rcx, qword [0x14013f5a0]
call fcn.1400309c0
cmp eax, 0xffffffff
jne 0x140057922
mov r9, qword [0x14013f5a0]
lea rdx, str.Parameter_1_invalid.
mov rsi, qword [rsp + 0x60]
jmp 0x140055cfd
mov dword [rsi + 0x110], eax
jmp case.0x1400574cb.3
mov rdx, qword [0x14013f5a0]
lea rcx, [0x140141fd0]
call fcn.14000cf00
jmp case.0x1400574cb.3
xor edx, edx
mov rsi, r8
mov rcx, r8
call fcn.14004cc90
mov rcx, rax
call fcn.1400a7b30
xor ecx, ecx
mov ebx, ecx
test al, al
setne bl
jmp 0x140057988
mov rcx, qword [0x14013f5a0]
call fcn.140033720
cmp eax, 0xffffffff
je case.default.0x1400570b5
mov dword [rsi + 0x13c], eax
jmp case.0x1400574cb.3
mov rsi, r8
xor eax, eax
mov ebx, eax
mov dword [rsp + 0x70], ebx
test ebx, ebx
je 0x140057e04
cmp dword [rbp + 0x9f8], 3
je 0x140057e04
jmp 0x140051b87
mov rsi, qword [rsp + 0x60]
mov ebx, 1
test rsi, rsi
je 0x140057e04
xor edi, edi
jmp 0x140051785
mov r8, qword [rbp - 0x40]
mov qword [r8], rcx
mov eax, edi
jmp 0x140057e06
mov r8, qword [rbp - 0x40]
mov qword [r8], rcx
mov eax, edx
jmp 0x140057e06
mov rcx, qword [rsi + 0x28]
test rcx, rcx
je 0x1400579f0
mov rcx, qword [rcx + 0x28]
mov r8, qword [rbp - 0x40]
mov qword [r8], rcx
mov eax, 5
jmp 0x140057e06
mov rax, qword [rsi + 0x28]
test rax, rax
je 0x140057a0a
mov r8, qword [rbp - 0x40]
mov qword [r8], rax
mov eax, 6
jmp 0x140057e06
cmp edx, 7
mov eax, 1
cmove edx, eax
mov eax, edx
jmp 0x140057e06
mov rax, qword [rcx + 0x10]
mov r8, qword [rbp - 0x40]
mov qword [r8], rax
mov eax, edi
jmp 0x140057e06
lea r9, [0x1401035ac]
xor r8d, r8d
lea rdx, str.A_Goto_Gosub_must_not_jump_into_a_block_that_doesnt_enclose_it.
mov rcx, rsi
call fcn.14005f3f0
xor eax, eax
jmp 0x140057e06
mov eax, dword [rsp + 0x70]
cmp eax, 7
mov ecx, 1
cmove eax, ecx
jmp 0x140057e06
mov r9, qword [0x14013f5b0]
xor r8d, r8d
lea rdx, str.Parameter_3_invalid.
mov rcx, rsi
call fcn.14005f3f0
jmp 0x140057e06
mov r9, qword [0x14013f5a8]
xor r8d, r8d
lea rdx, str.Parameter_2_invalid.
mov rcx, rsi
call fcn.14005f3f0
jmp 0x140057e06
mov rax, qword [rbp - 0x70]
mov r8, qword [rbp - 0x40]
mov qword [r8], rax
mov eax, dword [rsp + 0x70]
jmp 0x140057e06
test rdi, rdi
je 0x140057ae8
cmp dword [rdi + 0x10], 6
jne 0x140057ad0
mov rcx, qword [rdi]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x140057adf
call qword [sym.imp.MSVCR100.dll_free]
mov rcx, rdi
call qword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void____ptr64_]
test ebx, ebx
je 0x140057e04
cmp ebx, 8
je 0x140057e04
lea r9, [0x1401035ac]
xor r8d, r8d
lea rdx, str.Jumps_cannot_exit_a_FINALLY_block.
mov rcx, qword [0x140143818]
call fcn.14005f3f0
jmp 0x140057e06
mov r8, qword [rbp - 0x40]
mov qword [r8], rcx
mov eax, 1
jmp 0x140057e06
mov r8, qword [rbp - 0x40]
mov qword [r8], rcx
jmp 0x140057e06
mov rbx, qword [rbp + 0xa00]
test rbx, rbx
je 0x140057b93
cmp dword [rbx + 0x10], 0
jne 0x140057b93
mov rcx, qword [0x14013f500]
test rcx, rcx
je 0x140057b84
cmp byte [rcx + 0x23], 0
jne 0x140057b62
mov rax, qword [rcx + 0x10]
jmp 0x140057b65
mov rax, rcx
test byte [rax + 0x21], 2
je 0x140057b84
mov rdx, rbx
call fcn.1400072f0
cmp dword [rbx + 0x10], 6
jne 0x140057b93
mov rcx, qword [rbx]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_htonl]
jmp 0x140057b93
xor eax, eax
mov dword [rbx + 0x10], eax
mov rax, qword [0x14013f5a0]
mov qword [rbx], rax
cmp dword [rbp + 0x9f8], 1
mov eax, 7
cmovne edi, eax
mov eax, edi
jmp 0x140057e06
mov rax, qword [rsi + 0x28]
test rax, rax
je 0x1400579f0
mov r8, qword [rbp - 0x40]
mov qword [r8], rax
mov eax, edi
jmp 0x140057e06
cmp byte [rsi + 1], 0
jne 0x140057be8
lea r9, [0x1401035ac]
xor r8d, r8d
lea rdx, str.An_exception_was_thrown.
mov rcx, rsi
call fcn.14005e320
jmp 0x140057e06
mov ecx, SafeArrayAllocDescriptor
call qword [sym.imp.MSVCR100.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__]
mov rdi, rax
test rax, rax
je 0x140057c47
mov rax, qword [0x140141290]
test rax, rax
jne 0x140057c65
mov rax, qword [rsi + 8]
movzx ecx, word [rax + 2]
mov eax, 0xff
cmp cx, ax
jb 0x140057c1c
movzx eax, cx
inc eax
movsxd rbx, eax
lea rcx, [rbx + rbx]
call qword [sym.imp.MSVCR100.dll_malloc]
mov qword [0x140141290], rax
test rax, rax
jne 0x140057c6c
mov qword [0x140141298], rax
mov rcx, rdi
call qword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void____ptr64_]
lea r9, [0x1401035ac]
xor r8d, r8d
lea rdx, str.Out_of_memory.
mov rcx, rsi
call fcn.14005f3f0
jmp 0x140057e06
mov rbx, qword [0x140141298]
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x78], rbx
xor ecx, ecx
mov qword [0x140141290], rcx
mov qword [0x140141298], rcx
mov qword [rbp - 0x10], rax
mov qword [rbp + 0xf0], rcx
mov qword [rbp + 0xf8], rcx
mov dword [rdi + 0x10], 0x41
mov qword [rsp + 0x40], rcx
lea rax, [rbp + 0xf0]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x10]
mov qword [rsp + 0x20], rax
mov r9, rdi
lea r8, [rsp + 0x70]
xor edx, edx
mov rcx, rsi
call fcn.1400ac240
mov rbx, rax
mov rsi, qword [rbp - 0x60]
cmp rax, rsi
jne 0x140057ced
mov qword [rdi + 0x18], rax
jmp 0x140057d2f
xor eax, eax
mov qword [rdi + 0x18], rax
test rsi, rsi
je 0x140057d31
mov rcx, qword [0x140141290]
test rcx, rcx
je 0x140057d1d
call qword [sym.imp.MSVCR100.dll_free]
cmp qword [0x140141298], 0x400000
jbe 0x140057d1d
dec dword [0x1401412a0]
mov qword [0x140141290], rsi
mov rax, qword [rbp - 0x78]
mov qword [0x140141298], rax
xor eax, eax
test rbx, rbx
jne 0x140057d48
mov rcx, rdi
call qword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void____ptr64_]
mov eax, dword [rsp + 0x70]
jmp 0x140057e06
cmp dword [rdi + 0x10], 0x41
jne 0x140057d54
mov dword [rdi + 0x10], eax
mov qword [rdi], rbx
mov rax, qword [rbp - 0x48]
mov qword [rax + 0x148], rdi
test byte [rax + 0x140], 2
jne 0x140057d72
mov rcx, qword [rsp + 0x60]
call fcn.14005fa60
xor eax, eax
jmp 0x140057e06
cmp byte [0x14013e2d7], 1
je 0x140057db5
mov rax, qword [0x14013ccd8]
cmp word [rax], 0
jne 0x140057db5
cmp dword [0x14014053c], 0
jne 0x140057db5
cmp qword [0x14013f848], 0
jne 0x140057db5
cmp qword [0x14013f850], 0
jne 0x140057db5
cmp byte [0x14013f880], 0
je case.0x140051b54.111
mov eax, 8
jmp 0x140057e06
xor edx, edx
mov rcx, rsi
call fcn.14004cc90
mov r8, rax
mov edx, 9
lea rcx, [0x140143150]
call fcn.140035b90
jmp 0x140057e06
cmp dword [rbp + 0x9f8], 2
je 0x1400579c7
lea r9, [0x1401035ac]
xor r8d, r8d
lea rdx, str.A__return__must_be_encountered_prior_to_this___.
mov rcx, rsi
call fcn.14005f3f0
jmp 0x140057e06
mov eax, ebx
lea r11, [rsp + 0xac8]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
mov rsp, r11
pop rdi
pop rsi
pop rbx
pop rbp
ret