Function at 0x425f30
Capabilities:
Check for time delay via gettickcount
Empty the recycle bin
Move file
Print debug messages
Resolve function by parsing pe exports
Set environment variable

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push 0xffffffffffffffff
push 0x4d7c0b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x968
mov eax, dword [ebp + 0x10]
push ebx
push esi
push edi
mov dword [esp + 0x78], ecx
test eax, eax
jne 0x425f63
lea eax, [esp + 0x7c]
mov ebx, dword [0x51161c]
mov edx, eax
mov esi, ecx
mov dword [esp + 0x48], eax
mov dword [edx], 0
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x1c], esi
test ecx, ecx
je case.0x4262de.227
mov edi, dword [esp + 0x7c]
jmp 0x425f90
cmp dword [0x517a00], 0
je 0x425fca
cmp dword [0x5179f0], 0
je 0x425fb8
mov eax, dword [0x5179e8]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov dword [0x5179f0], 0
call dword [sym.imp.USER32.dll_CloseClipboard]
xor eax, eax
mov dword [0x517a00], eax
mov dword [0x5179e8], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x51161c]
mov dword [esp + 0x2c], eax
sub eax, dword [0x5179a4]
cmp eax, dword [ecx + 0xd8]
jbe 0x42601d
push 0
push 0
push 0
push 0
lea edx, [esp + 0x134]
push edx
call dword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x42600e
push 1
push 0xffffffffffffffff
call fcn.00401930
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esp + 0x2c], eax
mov dword [0x5179a4], eax
cmp byte [ebx + 0xec], 0
jne 0x42604e
cmp byte [ebx + 0xee], 0
jne 0x42604e
mov ecx, dword [0x517998]
cmp ecx, 0xffffffff
jle 0x42604e
mov eax, dword [ebx + 0x28]
cmp eax, ecx
jle 0x42604a
mov byte [ebx + 0xec], 1
jmp 0x42604e
inc eax
mov dword [ebx + 0x28], eax
call fcn.00401220
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
cmp eax, 0xffffffff
jl 0x426076
jg 0x426064
cmp ecx, 0xffffffff
jbe 0x426076
cmp dword [0x517994], eax
jg 0x42608c
jl 0x426076
cmp dword [0x517990], ecx
jae 0x42608c
mov eax, dword [ebx + 0x24]
cmp eax, 0xffffffff
jle 0x426098
mov ecx, dword [esp + 0x2c]
sub ecx, dword [0x5179a0]
cmp ecx, eax
jb 0x426098
push 1
push 0xa
call fcn.00401930
add esp, 8
cmp byte [ebx + 0xf8], 0
je 0x4260b9
push 1
push 0x8000012f
call fcn.00401930
add esp, 8
cmp byte [ebx + 0xf8], 0
jne 0x4260a1
mov dword [0x5174dc], esi
cmp byte [ebx + 0xf9], 0
je 0x426100
mov eax, dword [0x5167b4]
mov dword [eax*4 + 0x5167b8], esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x5167b4]
mov dword [ecx*4 + 0x5157d0], eax
inc ecx
mov dword [0x5167b4], ecx
cmp ecx, 0x190
jl 0x426100
mov dword [0x5167b4], 0
movzx eax, word [esi]
cmp eax, 1
je 0x42612d
cmp eax, 0x6b
je 0x42612d
cmp eax, 0x72
je 0x42612d
mov ebx, dword [ebp + 0xc]
push 0
push 0xffffffffffffffff
push ebx
push esi
call fcn.0045b1c0
mov edi, eax
cmp edi, 1
jne 0x42aa03
jmp 0x426130
mov ebx, dword [ebp + 0xc]
movzx eax, word [esi]
cmp eax, 9
jb 0x42628f
cmp eax, 0x20
ja 0x42628f
add dword [0x517990], 1
push esi
adc dword [0x517994], 0
call fcn.0042b3c0
cmp eax, 3
jne 0x4261ed
mov ecx, dword [esi + 0x18]
cmp word [ecx], 0x73
jne 0x42618f
jmp 0x426170
mov ecx, dword [ecx + 0x18]
lea edx, [esp + 0x38]
push edx
push ebx
push 2
call fcn.00425f30
mov ecx, dword [esi + 0x18]
mov edi, eax
mov eax, dword [esp + 0x38]
cmp eax, ecx
je 0x426170
jmp 0x4261a2
lea eax, [esp + 0x38]
push eax
push ebx
push 3
call fcn.00425f30
mov edi, eax
mov eax, dword [esp + 0x38]
cmp eax, esi
je 0x427492
cmp dword [ebp + 8], 3
je 0x42a9fd
cmp edi, 1
jne 0x42a9fd
test eax, eax
je 0x4261d2
mov ecx, dword [eax + 0x20]
cmp ecx, dword [esi + 0x20]
jne 0x42aa1f
jmp 0x42748a
mov esi, dword [esi + 0x1c]
cmp word [esi], 0x21
mov dword [esp + 0x1c], esi
jne 0x42748e
mov edx, esi
mov eax, dword [edx + 0x1c]
jmp 0x42748a
mov esi, dword [esi + 0x1c]
cmp word [esi], 0x21
mov dword [esp + 0x1c], esi
jne 0x426269
mov ecx, dword [esi + 0x18]
cmp word [ecx], 0x73
jne 0x426222
mov ecx, dword [ecx + 0x18]
lea edx, [esp + 0x38]
push edx
push ebx
push 2
call fcn.00425f30
mov ecx, dword [esi + 0x18]
mov edi, eax
mov eax, dword [esp + 0x38]
cmp eax, ecx
je 0x426203
jmp 0x426235
lea eax, [esp + 0x38]
push eax
push ebx
push 3
call fcn.00425f30
mov edi, eax
mov eax, dword [esp + 0x38]
cmp dword [ebp + 8], 3
je 0x42a9fd
cmp edi, 1
jne 0x42a9fd
test eax, eax
je 0x42625d
mov ecx, dword [eax + 0x20]
cmp ecx, dword [esi + 0x20]
jne 0x42aa1f
jmp 0x42748a
mov edx, dword [esi + 0x1c]
mov dword [esp + 0x1c], edx
jmp 0x42748e
cmp dword [ebp + 8], 3
jne 0x42748e
mov eax, 1
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
xor edx, edx
cmp dword [0x515ebc], edx
jne 0x4262b9
cmp dword [0x515ec0], edx
jne 0x4262b9
cmp dword [0x515ec4], edx
jne 0x4262b9
cmp dword [0x515ec8], edx
jne 0x4262b9
cmp dword [0x515ecc], edx
je 0x4262c5
mov ecx, dword [esp + 0x78]
mov eax, 0xde
mov word [ecx], ax
movzx eax, word [esi]
lea ecx, [eax - 0x60]
cmp ecx, 0x83
ja case.0x4262de.98
movzx ecx, byte [ecx + 0x42ae40]
jmp dword [ecx*4 + 0x42adfc]
mov ecx, 1
add dword [0x517990], ecx
adc dword [0x517994], edx
mov eax, dword [esi + 0x1c]
cmp eax, edx
je 0x426396
xor ebx, ebx
cmp dword [esi + 0x10], ecx
mov edi, eax
sete bl
mov dword [esp + 0x64], edi
cmp ebx, edx
je 0x42632d
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax + 0xb4]
mov dword [eax + 0xb8], ecx
mov dword [eax + 0xb4], 0
mov ecx, edi
call fcn.00401760
mov edi, eax
test ebx, ebx
je 0x426354
mov eax, dword [esp + 0x4c]
mov edx, dword [eax + 0xb8]
mov dword [eax + 0xb4], edx
mov dword [eax + 0xb8], 0
test edi, edi
je 0x42aa03
cmp edi, 8
je 0x42aa03
cmp dword [ebp + 8], 3
jne 0x427487
mov eax, 1
cmp edi, 7
je 0x426278
mov eax, edi
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push esi
mov bl, cl
call fcn.00443d00
mov edi, eax
mov dword [esp + 0x64], edi
test edi, edi
je 0x42ad54
mov edx, dword [esp + 0x4c]
cmp dword [edx + 0xb4], 0
je 0x4263cf
mov eax, dword [edi + 8]
call fcn.00443dc0
test eax, eax
je 0x4263cf
mov ebx, 1
jmp 0x426313
xor ebx, ebx
jmp 0x42632d
add dword [0x517990], 1
adc dword [0x517994], edx
mov eax, dword [esi + 0x1c]
mov dword [esp + 0x64], eax
cmp eax, edx
jne 0x426402
push esi
mov bl, 1
call fcn.00443d00
mov dword [esp + 0x64], eax
test eax, eax
je 0x42ad54
cmp dword [ebp + 8], 3
mov ecx, dword [esp + 0x4c]
mov dword [ecx + 0xbc], eax
je 0x42aa1c
mov ecx, dword [eax + 8]
mov edx, dword [esi + 0x20]
cmp edx, dword [ecx + 0x20]
jne 0x42aa1c
mov dword [esp + 0x1c], ecx
jmp 0x42748e
add dword [0x517990], 1
mov eax, dword [esp + 0x78]
adc dword [0x517994], edx
mov ebx, dword [eax + 0x10]
cmp ebx, edx
jne 0x42647c
mov eax, dword [0x515e60]
mov edi, eax
cmp word [eax], dx
je 0x42647a
mov ebx, dword [0x516ee0]
cmp ebx, edx
je 0x42647a
lea esp, [esp]
mov ecx, dword [ebx + 4]
push edi
push ecx
call fcn.004c4e9d
add esp, 8
test eax, eax
je 0x4264ac
mov ebx, dword [ebx + 0x14]
test ebx, ebx
jne 0x426460
xor edx, edx
xor ebx, ebx
xor eax, eax
mov edi, 1
cmp ebx, edx
je 0x426593
mov eax, dword [0x515e64]
cmp word [eax], 0
je 0x4264b0
push 0x4e756c
push eax
call fcn.004c4e9d
add esp, 8
test eax, eax
jne 0x4264b0
mov al, 1
jmp 0x4264b2
xor edx, edx
jmp 0x42647c
xor al, al
lea edx, [esp + 0x64]
push edx
push eax
push ebx
xor eax, eax
call fcn.004ad230
mov edx, dword [esp + 0x64]
mov dword [esp + 0x34], eax
test edx, edx
je 0x42658f
mov eax, dword [edx + 8]
mov edi, dword [eax + 0x20]
test edi, edi
je 0x426521
mov ecx, dword [esi + 0x20]
test ecx, ecx
je 0x4264ec
cmp edi, ecx
je 0x426521
mov ecx, dword [ecx + 0x20]
test ecx, ecx
jne 0x4264e1
push 0x4e1a4c
push 0
push 0x4efee0
call fcn.0049fc00
add esp, 4
push eax
mov ecx, esi
call fcn.0042f1b0
xor eax, eax
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ebx, dword [esp + 0x4c]
mov edi, dword [ebx + 0xb4]
test edi, edi
je 0x4265bc
call fcn.00443dc0
test eax, eax
je 0x4265bc
mov dword [esp + 0x2c], 1
mov dword [ebx + 0xb8], edi
mov dword [ebx + 0xb4], 0
mov ecx, edx
call fcn.00401760
cmp dword [esp + 0x2c], 0
mov edi, eax
je 0x42657e
mov eax, dword [ebx + 0xb8]
mov dword [ebx + 0xb4], eax
mov dword [ebx + 0xb8], 0
test edi, edi
je 0x42aa03
cmp edi, 8
je 0x42aa03
mov eax, dword [esp + 0x34]
test eax, eax
mov eax, dword [esp + 0x78]
sete cl
movzx edx, cl
push edx
push eax
call fcn.0042efe0
cmp dword [ebp + 8], 3
je 0x42636f
mov ecx, dword [esi + 0x18]
mov dword [esp + 0x1c], ecx
jmp 0x42748e
mov dword [esp + 0x2c], 0
jmp 0x426558
mov eax, dword [esi + 0x10]
mov dword [esp + 0x20], eax
dec eax
je 0x426614
sub eax, 3
je 0x4265fa
sub eax, 5
jne 0x42668b
mov edx, dword [0x515e64]
push eax
push eax
push 1
push edx
call fcn.0041c510
add esp, 0x10
mov dword [esp + 0x74], eax
jmp 0x42668b
mov eax, dword [0x515e60]
push 0
push 0
push 0
push eax
call fcn.0041c510
add esp, 0x10
mov dword [esp + 0x74], eax
jmp 0x42668b
movzx eax, byte [esi + 2]
sub eax, edx
je 0x426683
dec eax
je 0x426641
mov ecx, dword [0x515e60]
push str.Read
push ecx
call fcn.004c4e9d
add esp, 8
test eax, eax
jne 0x42665a
mov dword [esp + 0x20], 5
jmp 0x42668b
mov eax, dword [0x515e60]
push 0
push 1
push 1
push 1
call fcn.004a7050
add esp, 0x10
test eax, eax
jne 0x426683
mov edx, dword [0x515e60]
push 0
push 0
push 0
push edx
call fcn.0041c510
xor ecx, ecx
add esp, 0x10
test eax, eax
setne cl
mov dword [esp + 0x74], eax
add ecx, 3
mov dword [esp + 0x20], ecx
jmp 0x42668b
mov dword [esp + 0x20], 2
mov ecx, dword [esp + 0x20]
lea eax, [ecx - 3]
cmp eax, 7
ja case.0x4266a2.5
movzx edx, byte [eax + 0x42aed0]
jmp dword [edx*4 + 0x42aec4]
mov esi, dword [0x515e64]
call fcn.0041cd70
mov dword [esp + 0x58], eax
test eax, eax
je 0x42aafe
mov eax, dword [0x515e68]
cmp word [eax], 0x31
jne 0x4266dd
cmp word [eax + 2], 0
jne 0x4266dd
mov esi, dword [esp + 0x1c]
mov byte [esp + 0x60], 1
jmp case.0x4266a2.5
mov esi, dword [esp + 0x1c]
mov byte [esp + 0x60], 0
jmp case.0x4266a2.5
cmp ecx, 4
jne 0x426724
mov esi, dword [0x515e68]
call fcn.0041cd70
mov dword [esp + 0x58], eax
mov eax, dword [0x515e6c]
cmp word [eax], 0x31
jne 0x426719
cmp word [eax + 2], 0
jne 0x426719
mov esi, dword [esp + 0x1c]
mov byte [esp + 0x60], 1
jmp 0x426742
mov esi, dword [esp + 0x1c]
mov byte [esp + 0x60], 0
jmp 0x426742
mov eax, dword [0x515e68]
call fcn.0041cdc0
mov dword [esp + 0x58], eax
shr eax, 2
and al, 1
mov byte [esp + 0x60], al
je 0x426742
and dword [esp + 0x58], 0xfffffffb
cmp dword [esp + 0x58], 0
je 0x42ab35
mov byte [esp + 0x27], 0
mov dword [esp + 0x38], 0
mov eax, dword [esi + 0x1c]
cmp word [eax], 0x6c
mov dword [esp + 0x34], eax
jne 0x426772
mov ebx, eax
mov eax, dword [ebx + 0x18]
mov dword [esp + 0x34], eax
jmp 0x426774
xor ebx, ebx
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
mov dword [esp + 0xc0], ecx
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x2c], ecx
mov ecx, dword [eax + 0x18]
mov dword [esp + 0xc4], edx
mov edx, dword [eax + 0x14]
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x28], edx
mov edx, dword [eax + 0x1c]
mov dword [esp + 0x40], edx
cmp ecx, 8
je 0x4267bf
mov dword [eax + 8], 1
mov dword [eax + 0xc], 0
lea eax, [ecx - 2]
cmp eax, 8
ja case.default.0x4267cb
jmp dword [eax*4 + 0x42aed8]
cmp byte [esi + 2], 0
jbe 0x4267eb
xor edi, edi
mov ecx, esi
call fcn.00422540
mov byte [esp + 0x9c], 0
jmp 0x4267f7
xor eax, eax
xor edx, edx
mov byte [esp + 0x9c], 1
mov ecx, dword [esp + 0x9c]
push ecx
mov ecx, dword [ebp + 0xc]
push edx
push eax
push ebx
lea edx, [esp + 0x48]
push edx
lea eax, [esp + 0x3b]
push eax
push ecx
mov edi, esi
call fcn.0042ca40
mov edi, eax
jmp case.default.0x4267cb
mov ebx, dword [ebp + 0xc]
lea edx, [esp + 0x38]
push edx
lea eax, [esp + 0x2b]
push eax
call fcn.0042cba0
mov esi, dword [esp + 0x1c]
mov edi, eax
jmp case.default.0x4267cb
mov eax, dword [ebp + 0xc]
push ebx
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x2f]
push edx
push eax
push esi
call fcn.0042cd90
mov edi, eax
jmp case.default.0x4267cb
mov ecx, dword [0x515e68]
push 0x4ebce0
push ecx
call fcn.004c4e9d
mov ecx, dword [ebp + 0xc]
add esp, 8
push ebx
lea edx, [esp + 0x3c]
push edx
test eax, eax
lea eax, [esp + 0x2f]
push eax
push ecx
push esi
je 0x42688b
call fcn.0042dcc0
mov edi, eax
jmp case.default.0x4267cb
call fcn.0042dfb0
mov edi, eax
jmp case.default.0x4267cb
lea esi, [esp + 0xec]
call fcn.0041d410
mov dword [esp + 0x97c], 0
mov edx, dword [0x515e64]
cmp word [edx], 0
je 0x426904
mov eax, dword [esp + 0x4c]
mov eax, dword [eax + 0xfc]
and eax, 0x7fffffff
push 0x30c
mov ecx, esi
call fcn.004a0800
test al, al
je 0x426904
mov ecx, dword [0x515e68]
push ecx
mov ecx, dword [ebp + 0xc]
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0x2f]
push eax
push ecx
mov edx, ebx
mov ebx, dword [esp + 0x2c]
mov ecx, esi
call fcn.0042e2c0
mov edi, eax
call fcn.0041d370
jmp 0x426909
mov edi, 1
lea ecx, [esp + 0xec]
mov dword [esp + 0x97c], 0xffffffff
call fcn.0041d460
mov esi, dword [esp + 0x1c]
jmp case.default.0x4267cb
mov eax, dword [0x515e60]
cmp ecx, 3
je 0x426938
mov eax, dword [0x515e64]
mov edx, dword [esp + 0x60]
push eax
mov eax, dword [esp + 0x5c]
push edx
push eax
mov eax, dword [ebp + 0xc]
push ebx
lea ecx, [esp + 0x48]
push ecx
lea edx, [esp + 0x3b]
push edx
push eax
mov ecx, esi
call fcn.0042d200
mov edi, eax
jmp case.default.0x4267cb
cmp ecx, 4
lea ecx, [esp + 0x57]
push ecx
jne 0x42698c
mov edx, dword [0x515e60]
push 0
push 0
push edx
call fcn.0041c510
mov dword [esp + 0x40], eax
mov eax, dword [0x515e64]
mov dword [esp + 0xc4], eax
jmp 0x4269a5
mov eax, dword [0x515e64]
lea edx, [esp + 0xb8]
push edx
push 1
push eax
call fcn.0041c510
mov dword [esp + 0x40], eax
add esp, 0x10
cmp dword [esp + 0x30], 0
je 0x4269f7
mov ecx, dword [esp + 0xb4]
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x74]
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x60]
push eax
push ecx
push edx
mov edx, dword [ebp + 0xc]
push ebx
lea eax, [esp + 0x50]
push eax
lea ecx, [esp + 0x43]
push ecx
push edx
mov ecx, esi
call fcn.0042d890
cmp byte [esp + 0x57], 0
mov edi, eax
je case.default.0x4267cb
mov eax, dword [esp + 0x30]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp case.default.0x4267cb
mov edi, 1
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0xc0]
mov edx, dword [esp + 0xc4]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x2c]
mov dword [eax + 0xc], edx
mov edx, dword [esp + 0x28]
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x68]
mov dword [eax + 0x14], edx
mov edx, dword [esp + 0x40]
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], edx
test edi, edi
je 0x42aa03
cmp edi, 7
je 0x42aa03
cmp edi, 8
je 0x42aa03
cmp byte [esp + 0x27], 0
jne 0x427492
mov eax, dword [esp + 0x38]
test eax, eax
je 0x426a74
mov ecx, dword [eax + 0x20]
cmp ecx, dword [esi + 0x20]
jne 0x42ab69
mov dword [esp + 0x1c], eax
mov esi, eax
jmp 0x427492
cmp dword [ebp + 8], 3
je case.0x4262de.227
mov edx, dword [esp + 0x34]
mov dword [esp + 0x1c], edx
jmp 0x42748e
mov ecx, dword [esp + 0x4c]
mov edi, eax
mov eax, dword [ecx + 0x100]
mov dword [esp + 0x68], edi
mov dword [esp + 0x2c], eax
cmp edi, 0x70
jne 0x426ae8
mov ebx, dword [0x515e10]
mov eax, dword [ecx + 0x104]
mov dword [esp + 0x40], eax
mov dword [ecx + 0x104], edx
cmp ebx, edx
je 0x426ac7
call fcn.004a9bb0
mov edi, eax
jmp 0x426acc
mov edi, 1
lea esi, [esp + 0x40]
call fcn.0042f890
test edi, edi
je 0x42ad54
mov esi, dword [esp + 0x1c]
mov ebx, dword [ebp + 0xc]
xor edx, edx
jmp 0x426b03
or eax, 1
mov dword [ecx + 0x100], eax
mov edi, dword [esi + 0x1c]
cmp word [edi], 0x71
je 0x426b03
or eax, 2
mov dword [ecx + 0x100], eax
mov dword [esp + 0x38], edx
mov ecx, dword [esi + 0x18]
cmp word [ecx], 0x73
jne 0x426b2f
mov ecx, dword [ecx + 0x18]
lea eax, [esp + 0x38]
push eax
push ebx
push 2
call fcn.00425f30
mov ecx, dword [esi + 0x18]
mov edx, dword [esp + 0x38]
mov edi, eax
cmp edx, ecx
je 0x426b10
jmp 0x426b42
lea edx, [esp + 0x38]
push edx
push ebx
push 3
call fcn.00425f30
mov edx, dword [esp + 0x38]
mov edi, eax
mov eax, dword [esp + 0x68]
mov esi, dword [esi + 0x1c]
mov dword [esp + 0x1c], esi
cmp ax, 0x6f
jne 0x426bb3
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x4c]
mov dword [ebx + 0x100], eax
xor al, al
cmp word [esi], 0x70
jne 0x426b83
cmp dword [ebx + 0x104], 0
mov al, 1
jne 0x42748e
mov ecx, esi
mov ecx, dword [ecx + 0x1c]
mov dword [esp + 0x1c], ecx
mov esi, ecx
cmp word [esi], 0x71
je 0x426bcb
test al, al
jne 0x426c89
cmp dword [ebx + 0x104], 0
lea esi, [ebx + 0x104]
je 0x426c89
call fcn.0042f890
mov edi, 1
jmp 0x426c85
cmp ax, 0x70
jne 0x426c89
cmp word [esi], 0x71
jne 0x426c89
mov ebx, dword [esp + 0x4c]
cmp edi, 1
jne 0x426bdc
test edx, edx
je 0x42748e
mov esi, dword [esp + 0x1c]
mov ecx, dword [0x516dfc]
mov edx, dword [ebx + 0x104]
mov dword [esp + 0x34], ecx
xor eax, eax
lea ecx, [esp + 0xcc]
push ecx
mov dword [esp + 0x30], edx
mov edx, dword [0x516e00]
push eax
push 3
mov ecx, esi
mov dword [ebx + 0x104], eax
mov dword [esp + 0x4c], edx
mov dword [0x516dfc], eax
mov dword [0x516e00], eax
call fcn.00425f30
cmp dword [esp + 0x34], 0
mov dword [esp + 0x30], eax
je 0x426c60
mov eax, dword [0x516dfc]
test eax, eax
je 0x426c4d
push eax
call fcn.004c57e5
add esp, 4
cmp dword [0x516e00], 0x400000
jbe 0x426c4d
dec dword [0x516e04]
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x40]
mov dword [0x516dfc], edx
mov dword [0x516e00], eax
mov eax, dword [esp + 0x30]
cmp eax, 1
jne 0x42ab74
cmp dword [esp + 0xcc], 0
jne 0x42ab74
mov ecx, dword [esp + 0x2c]
mov dword [ebx + 0x104], ecx
mov edx, dword [esp + 0x38]
cmp dword [ebp + 8], 3
je 0x42abdb
cmp edi, 1
jne 0x42abdb
test edx, edx
je 0x42748e
mov eax, dword [edx + 0x20]
mov ecx, dword [esp + 0x1c]
cmp eax, dword [ecx + 0x20]
jne 0x42abd0
mov dword [esp + 0x1c], edx
jmp 0x42748e
mov edx, dword [esi + 0x18]
mov dword [esp + 0x1c], edx
jmp 0x42748e
mov ebx, dword [0x516dfc]
mov eax, dword [0x516e00]
mov dword [esp + 0x34], edx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x28], eax
mov dword [0x516dfc], edx
mov dword [0x516e00], edx
mov dword [esp + 0xac], edx
cmp dword [esi + 0x10], edx
jne 0x426d0a
mov dword [esp + 0xa8], 0x41
mov edi, 1
jmp 0x426d61
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0xa4]
push edx
push 0
push esi
lea ebx, [esp + 0x38]
call fcn.0045ac50
mov ebx, dword [esp + 0x20]
mov edi, eax
cmp edi, 1
jne 0x426fb2
cmp dword [esp + 0xa8], 0
jne 0x426d61
cmp dword [esp + 0xa0], ebx
jne 0x426d61
mov eax, dword [esp + 0x28]
mov dword [esp + 0xac], ebx
xor ebx, ebx
mov dword [esp + 0xdc], eax
mov dword [esp + 0x20], ebx
mov dword [esp + 0x28], ebx
mov ecx, dword [esi + 0x18]
mov eax, dword [ecx + 0x18]
mov edx, 0xe3
mov dword [esp + 0x1c], eax
cmp word [eax], dx
jne 0x426f60
lea esp, [esp]
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + 0x10]
mov dword [esp + 0x2c], eax
test eax, eax
jne 0x426d9b
mov eax, dword [ecx + 0x18]
mov dword [esp + 0x34], eax
jmp 0x426f43
mov dword [esp + 0x30], 0
test eax, eax
jle 0x426f43
jmp 0x426db0
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x84]
push edx
push eax
push ecx
lea ebx, [esp + 0x38]
call fcn.0045ac50
mov edi, eax
cmp edi, 1
jne 0x426f24
cmp dword [esp + 0xa8], 0x41
jne 0x426ed6
lea edx, [esp + 0x80]
push edx
call fcn.0044fe20
add esp, 4
dec eax
je 0x426eb6
dec eax
je 0x426e4f
mov ecx, dword [esp + 0x88]
mov eax, dword [esp + 0x80]
cmp ecx, 6
je 0x426ecb
cmp ecx, 4
jne 0x426e32
cmp byte [eax + 0x17], 0
jne 0x426e28
mov eax, dword [eax + 0xc]
test byte [eax + 0x15], 2
jne 0x426ecb
xor ecx, ecx
lea eax, [esp + 0x80]
call fcn.00450030
xor ecx, ecx
cmp word [eax], cx
setne cl
mov eax, ecx
jmp 0x426eed
mov eax, dword [esp + 0x88]
dec eax
cmp eax, 5
ja case.0x426e5c.3
jmp dword [eax*4 + 0x42aefc]
fild qword [esp + 0x80]
jmp 0x426ea4
fld qword [esp + 0x80]
jmp 0x426ea4
mov eax, dword [esp + 0x80]
push 1
call fcn.0041be60
jmp 0x426ea4
mov eax, dword [esp + 0x84]
test eax, eax
je case.0x426e5c.3
fild qword [eax]
jmp 0x426ea4
mov edx, dword [esp + 0x80]
push edx
call fcn.004c6cde
add esp, 4
fldz
fucompp
fnstsw ax
test ah, 0x44
jnp case.0x426e5c.6
mov eax, 1
jmp 0x426eed
push 1
lea ecx, [esp + 0x84]
call fcn.0044fef0
add esp, 4
or eax, edx
je case.0x426e5c.6
mov eax, 1
jmp 0x426eed
xor eax, eax
jmp 0x426eed
lea eax, [esp + 0x80]
push eax
lea eax, [esp + 0xa4]
call fcn.00450350
add esp, 4
test eax, eax
setne bl
cmp dword [esp + 0x88], 6
jne 0x426f0b
mov eax, dword [esp + 0x80]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
test bl, bl
jne 0x426f2e
mov eax, dword [esp + 0x30]
inc eax
mov dword [esp + 0x30], eax
cmp eax, dword [esp + 0x2c]
jl 0x426db0
jmp 0x426f43
mov dword [esp + 0x34], 0
jmp 0x426f39
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 0x18]
mov dword [esp + 0x34], ecx
mov edx, dword [esp + 0x2c]
cmp dword [esp + 0x30], edx
jl 0x426f5c
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0x1c]
mov ecx, 0xe3
mov dword [esp + 0x1c], eax
cmp word [eax], cx
je 0x426d80
mov ebx, dword [esp + 0x20]
cmp dword [esp + 0xa8], 6
jne 0x426f79
mov eax, dword [esp + 0xa0]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
cmp dword [esp + 0xac], 0
je 0x426fb2
test ebx, ebx
je 0x426fa0
push ebx
call fcn.004c57e5
add esp, 4
cmp dword [esp + 0x28], 0x400000
jbe 0x426fa0
dec dword [0x516e04]
mov ecx, dword [esp + 0xdc]
mov ebx, dword [esp + 0xac]
mov dword [esp + 0x28], ecx
test ebx, ebx
je 0x426fef
cmp dword [0x516dfc], 0
je 0x426fe0
mov edx, dword [0x516dfc]
push edx
call fcn.004c57e5
add esp, 4
cmp dword [0x516e00], 0x400000
jbe 0x426fe0
dec dword [0x516e04]
mov eax, dword [esp + 0x28]
mov dword [0x516dfc], ebx
mov dword [0x516e00], eax
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x42700f
mov eax, dword [ebp + 0xc]
lea edx, [esp + 0x38]
push edx
push eax
push 2
call fcn.00425f30
mov edi, eax
mov eax, dword [esp + 0x38]
jmp 0x427015
xor eax, eax
mov dword [esp + 0x38], eax
cmp edi, 1
jne 0x42a9fd
cmp dword [ebp + 8], 3
je 0x42a9fd
test eax, eax
je 0x42625d
mov ecx, dword [eax + 0x20]
cmp ecx, dword [esi + 0x20]
jne 0x42aa1f
jmp 0x42748a
cmp dword [esi + 0x10], 1
jne 0x42704f
mov eax, dword [esi + 0x1c]
jmp 0x42748a
lea ecx, [esp + 0x38]
push ecx
mov ecx, dword [esi + 0x18]
push ebx
push 2
call fcn.00425f30
mov edi, eax
mov eax, dword [esp + 0x38]
cmp eax, esi
je 0x427492
cmp dword [ebp + 8], 3
je 0x42a9fd
cmp edi, 1
jne 0x42a9fd
test eax, eax
je 0x427047
mov edx, dword [esi + 0x20]
cmp edx, dword [eax + 0x20]
jne 0x42aa1f
mov dword [esp + 0x1c], eax
mov esi, eax
jmp 0x427492
call fcn.004011a0
add dword [0x517990], 1
mov eax, dword [0x515e10]
mov edi, dword [0x51161c]
adc dword [0x517994], 0
movzx ecx, word [esi]
lea edx, [ecx - 1]
mov ebx, eax
mov dword [esp + 0x28], ebx
mov dword [esp + 0x20], edi
cmp edx, 0x127
ja case.0x4270dc.8
movzx edx, byte [edx + 0x42b1e0]
jmp dword [edx*4 + 0x42af14]
mov ecx, dword [0x515e60]
push esi
call fcn.0047db20
jmp 0x427473
mov edi, 4
mov ecx, esi
call fcn.00422540
push eax
push ecx
mov edi, 1
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
xor edi, edi
mov ecx, esi
call fcn.00422540
push eax
mov eax, esi
call fcn.0047d970
jmp 0x427473
mov edi, 6
mov ecx, esi
call fcn.00422540
mov ecx, dword [0x515e6c]
push eax
mov eax, dword [0x515e70]
push eax
push ecx
push ecx
mov edi, 1
mov ecx, esi
call fcn.00422540
mov ecx, dword [0x515e68]
add esp, 4
push eax
push esi
call fcn.00483090
jmp 0x427473
mov edx, dword [0x515e70]
push edx
push ecx
mov edi, 3
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
mov edi, 2
mov ecx, esi
call fcn.00422540
push eax
push ecx
mov edi, 1
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
push esi
call fcn.00481ff0
jmp 0x427473
mov eax, dword [0x515e74]
mov ecx, dword [0x515e70]
push eax
push ecx
mov edi, 3
mov ecx, esi
call fcn.00422540
mov edx, dword [0x515e68]
push eax
push edx
push esi
call fcn.0047cde0
jmp 0x427473
mov eax, dword [0x515e74]
push eax
push ecx
mov edi, 3
mov ecx, esi
call fcn.00422540
mov ecx, dword [0x515e68]
add esp, 4
push eax
push ecx
mov ecx, dword [0x515e70]
push esi
call fcn.0047d5b0
jmp 0x427473
mov edx, dword [0x515e6c]
mov eax, dword [0x515e68]
push edx
push eax
push esi
call fcn.0047c6c0
jmp 0x427473
mov ecx, dword [0x515e6c]
push ecx
push ecx
mov edi, 2
mov ecx, esi
call fcn.00422540
mov edx, dword [0x515e64]
add esp, 4
push eax
push edx
push esi
call fcn.0047c940
jmp 0x427473
mov eax, dword [0x515e68]
mov ecx, dword [0x515e64]
push eax
push ecx
mov ecx, dword [0x515e6c]
push esi
call fcn.0047c190
jmp 0x427473
mov edx, dword [0x515e7c]
push edx
push ecx
mov edi, 6
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
mov edi, 5
mov ecx, esi
call fcn.00422540
push eax
push ecx
mov edi, 4
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
mov edi, 3
mov ecx, esi
call fcn.00422540
push eax
push esi
call fcn.00489400
jmp 0x427473
mov ecx, dword [0x515e64]
mov edx, dword [0x515e60]
push esi
call fcn.0048ccb0
jmp 0x427473
mov eax, dword [0x515e78]
mov ecx, dword [0x515e74]
push eax
push ecx
mov edi, 4
mov ecx, esi
call fcn.00422540
push eax
push ecx
mov edi, 3
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
mov edi, 2
mov ecx, esi
call fcn.00422540
push eax
push ecx
mov edi, 1
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
push esi
call fcn.0048d110
jmp 0x427473
mov edx, dword [0x515e6c]
push edx
push ecx
mov edi, 1
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
xor edi, edi
mov ecx, esi
call fcn.00422540
push eax
push esi
call fcn.00493990
jmp 0x427473
mov eax, dword [0x515e6c]
push eax
push ecx
mov edi, 2
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
mov edi, 1
mov ecx, esi
call fcn.00422540
mov ebx, dword [0x515e60]
push eax
push esi
call fcn.00495590
jmp 0x427473
mov ecx, dword [0x515e7c]
push ecx
push ecx
mov edi, 6
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
mov edi, 5
mov ecx, esi
call fcn.00422540
push eax
push ecx
mov edi, 4
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
mov edi, 3
mov ecx, esi
call fcn.00422540
push eax
push ecx
mov edi, 2
mov ecx, esi
call fcn.00422540
mov edx, dword [0x515e60]
add esp, 4
push eax
push edx
push esi
call fcn.00496a30
jmp 0x427473
mov eax, dword [0x515e70]
push eax
push ecx
mov edi, 3
mov ecx, esi
call fcn.00422540
mov ecx, dword [0x515e68]
add esp, 4
push eax
push ecx
push esi
call fcn.00498f40
jmp 0x427473
mov edx, dword [0x515e68]
push edx
mov edx, dword [0x515e6c]
push esi
call fcn.004992b0
jmp 0x427473
mov eax, dword [0x515e6c]
mov ecx, dword [0x515e68]
push eax
push ecx
mov ecx, dword [0x515e60]
push esi
call fcn.0047e620
jmp 0x427473
push esi
call fcn.0043d370
jmp 0x427473
cmp byte [esi + 2], 1
mov edx, dword [0x515e64]
jbe 0x4274dc
mov eax, dword [esi + 0xc]
cmp byte [eax + 0x11], 0
je 0x42745f
mov edi, 1
jmp 0x42747d
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x4274a3
mov edx, dword [eax + 4]
mov eax, dword [eax]
push edx
push eax
push ebx
call fcn.0041bcd0
mov edi, eax
test edi, edi
je 0x42aa03
cmp dword [ebp + 8], 3
je 0x42aa03
mov eax, dword [esi + 0x18]
mov dword [esp + 0x1c], eax
mov esi, dword [esp + 0x1c]
test esi, esi
je case.0x4262de.227
mov ebx, dword [esp + 0x4c]
jmp 0x425f90
mov eax, dword [0x515e14]
test eax, eax
je 0x4274dc
cmp word [edx], 0
jne 0x4274dc
mov cl, byte [eax + 0x17]
test cl, cl
jne 0x4274bf
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x17]
movzx ecx, cl
dec ecx
je 0x4274d3
sub ecx, 2
jne 0x4274dc
mov eax, ebx
call fcn.004a9cc0
jmp 0x427473
mov ecx, ebx
call fcn.004a9a30
jmp 0x427473
push 1
push 0
push 0xffffffffffffffff
push edx
push ebx
call fcn.004aa2a0
jmp 0x427473
mov eax, dword [esi + 0xc]
cmp dword [eax + 0x1c], 0
je 0x427507
cmp byte [eax + 0x11], 0
jne 0x427507
mov eax, 1
mov dword [esp + 0x20], eax
xor edi, edi
jmp 0x427548
mov edi, dword [0x515e14]
mov eax, dword [0x515e64]
mov dword [esp + 0x20], 0
test edi, edi
je 0x427536
cmp word [eax], 0
jne 0x427536
mov cl, byte [edi + 0x17]
test cl, cl
jne 0x427531
mov edx, dword [edi + 0xc]
mov cl, byte [edx + 0x17]
cmp cl, 1
je 0x4275aa
xor edi, edi
push 1
push 1
push 0
push 1
call fcn.004a7050
add esp, 0x10
push 1
mov ecx, ebx
mov dword [esp + 0x38], eax
call fcn.0041bd30
mov dword [esp + 0x68], eax
mov eax, dword [0x515e68]
movzx eax, word [eax]
test ax, ax
je 0x427706
call fcn.00409dc0
movzx ecx, ax
push 0x4ebdf4
mov dword [esp + 0x44], ecx
call fcn.0049fc00
mov edx, dword [esp + 0x44]
add esp, 4
push edx
push eax
call fcn.004c5cc1
add esp, 8
test eax, eax
je 0x427706
cmp dword [esp + 0x34], 0
jne 0x4275b9
mov edi, 1
jmp 0x42747d
test edi, edi
je 0x427538
push 1
mov ecx, edi
call fcn.0041bd30
jmp 0x427548
cmp dword [esp + 0x20], 0
je 0x4275ca
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x1c]
fild qword [ecx]
jmp 0x4275e8
test edi, edi
je 0x4275d9
push 0
mov eax, edi
call fcn.0041be60
jmp 0x4275e8
mov esi, dword [0x515e64]
call fcn.0041bc20
mov esi, dword [esp + 0x1c]
push 0
fstp qword [esp + 0x44]
push 1
mov ecx, ebx
call fcn.004016f0
cmp word [eax], 0
je 0x427631
lea edx, [esp + 0x94]
push edx
push 0
push 1
mov ecx, ebx
call fcn.004016f0
call fcn.004a6c10
add esp, 4
test eax, eax
jne 0x427655
push 1
push eax
push 0xffffffffffffffff
push 0x4e1a4c
push ebx
call fcn.004aa2a0
jmp 0x427473
lea eax, [esp + 0xe0]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea ecx, [esp + 0x94]
push ecx
lea edx, [esp + 0xe4]
push edx
call dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
mov eax, dword [0x515e68]
mov ax, word [eax]
call fcn.00409dc0
movzx eax, ax
add eax, 0xffffffbc
cmp eax, 0xf
ja case.0x427674.69
movzx ecx, byte [eax + 0x42b31c]
jmp dword [ecx*4 + 0x42b308]
fld qword [esp + 0x40]
fmul qword [0x50a160]
jmp 0x4276af
fld qword [esp + 0x40]
fmul qword [0x50a158]
jmp 0x4276af
fld qword [esp + 0x40]
fmul qword [0x50a150]
jmp 0x4276af
fld qword [esp + 0x40]
fmul qword [0x50a148]
jmp 0x4276af
fld qword [esp + 0x40]
mov esi, dword [esp + 0x94]
mov edi, dword [esp + 0x98]
call fcn.004d3df6
add esi, eax
adc edi, edx
mov dword [esp + 0x94], esi
push 0
lea eax, [esp + 0x98]
lea esi, [esp + 0x144]
mov dword [esp + 0x9c], edi
call fcn.004a6ec0
mov edx, dword [esp + 0x2c]
add esp, 4
push 1
push 0
push 0xffffffffffffffff
push eax
push edx
call fcn.004aa2a0
mov esi, dword [esp + 0x1c]
jmp 0x427473
mov eax, 2
cmp dword [esp + 0x34], eax
je 0x427789
cmp dword [esp + 0x68], eax
je 0x427789
cmp dword [esp + 0x20], 0
je 0x42774b
mov eax, dword [esi + 0xc]
mov eax, dword [eax + 0x1c]
mov ecx, dword [eax + 4]
mov edi, dword [eax]
push 0
mov eax, ebx
mov dword [esp + 0xc0], ecx
call fcn.0041bde0
add eax, edi
adc edx, dword [esp + 0xbc]
jmp 0x42746b
test edi, edi
je 0x42775a
push 0
mov eax, edi
call fcn.0041bde0
jmp 0x427769
mov esi, dword [0x515e64]
call fcn.0041bbf0
mov esi, dword [esp + 0x1c]
mov edi, eax
push 0
mov eax, ebx
mov dword [esp + 0xc0], edx
call fcn.0041bde0
add eax, edi
adc edx, dword [esp + 0xbc]
jmp 0x42746b
cmp dword [esp + 0x20], 0
je 0x42779a
mov edx, dword [esi + 0xc]
mov eax, dword [edx + 0x1c]
fild qword [eax]
jmp 0x4277b8
test edi, edi
je 0x4277a9
push 0
mov eax, edi
call fcn.0041be60
jmp 0x4277b8
mov esi, dword [0x515e64]
call fcn.0041bc20
mov esi, dword [esp + 0x1c]
push 0
fstp qword [esp + 0x44]
mov eax, ebx
call fcn.0041be60
fadd qword [esp + 0x40]
sub esp, 8
fstp qword [esp]
push ebx
call fcn.0041bd00
jmp 0x427473
mov ecx, dword [0x515e68]
movzx eax, word [ecx]
test ax, ax
je 0x4278d5
call fcn.00409dc0
push 0x4ebdf4
movzx edi, ax
call fcn.0049fc00
add esp, 4
push edi
push eax
call fcn.004c5cc1
add esp, 8
test eax, eax
je 0x4278d5
mov ecx, dword [0x515e14]
mov edi, dword [0x515e64]
test ecx, ecx
je 0x427849
cmp word [edi], 0
jne 0x427849
mov al, byte [ecx + 0x17]
test al, al
jne 0x427836
mov edx, dword [ecx + 0xc]
mov al, byte [edx + 0x17]
cmp al, 1
jne 0x427849
test ecx, ecx
je 0x427849
push 0
push 1
call fcn.004016f0
mov edi, eax
push 0
push 1
mov ecx, ebx
call fcn.004016f0
push eax
lea ebx, [esp + 0x63]
mov eax, edi
call fcn.004a6f70
add esp, 4
cmp byte [esp + 0x5f], 0
mov edi, eax
mov ebx, edx
je 0x427888
mov eax, dword [esp + 0x28]
push 1
push 0
push 0xffffffffffffffff
push 0x4e1a4c
push eax
call fcn.004aa2a0
jmp 0x427473
mov ecx, dword [0x515e68]
mov ax, word [ecx]
call fcn.00409dc0
movzx eax, ax
cmp eax, 0x44
je 0x4278b7
cmp eax, 0x48
je 0x4278ae
cmp eax, 0x4d
jne 0x4278c9
push 0
push 0x3c
jmp 0x4278be
push 0
push 0xe10
jmp 0x4278be
push 0
push 0x15180
push ebx
push edi
call fcn.004d3d10
mov edi, eax
mov ebx, edx
mov edx, dword [esp + 0x28]
push ebx
push edi
push edx
jmp 0x42746e
mov eax, dword [esi + 0xc]
xor edx, edx
cmp dword [eax + 0x1c], edx
je 0x4278f3
cmp byte [eax + 0x11], dl
jne 0x4278f3
mov edi, 1
mov dword [esp + 0x20], edi
mov dword [esp + 0x30], edx
jmp 0x427946
mov edi, dword [0x515e14]
mov eax, dword [0x515e64]
mov dword [esp + 0x20], edx
cmp edi, edx
je 0x427930
cmp word [eax], dx
jne 0x427930
mov cl, byte [edi + 0x17]
test cl, cl
jne 0x427918
mov ecx, dword [edi + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
jne 0x427930
mov dword [esp + 0x30], edi
cmp edi, edx
je 0x427934
push 1
mov ecx, edi
call fcn.0041bd30
jmp 0x427944
mov dword [esp + 0x30], edx
push 1
push 1
push 0
push 1
call fcn.004a7050
add esp, 0x10
mov edi, eax
push 1
mov ecx, ebx
call fcn.0041bd30
cmp edi, 2
je 0x4279cd
cmp eax, 2
je 0x4279cd
cmp dword [esp + 0x20], 0
je 0x42798d
mov edx, dword [esi + 0xc]
mov eax, dword [edx + 0x1c]
mov edi, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0xd4], eax
push 0
mov eax, ebx
call fcn.0041bde0
sub eax, edi
sbb edx, dword [esp + 0xd4]
jmp 0x42746b
mov eax, dword [esp + 0x30]
test eax, eax
je 0x42799e
push 0
call fcn.0041bde0
jmp 0x4279ad
mov esi, dword [0x515e64]
call fcn.0041bbf0
mov esi, dword [esp + 0x1c]
mov edi, eax
push 0
mov eax, ebx
mov dword [esp + 0xd8], edx
call fcn.0041bde0
sub eax, edi
sbb edx, dword [esp + 0xd4]
jmp 0x42746b
cmp dword [esp + 0x20], 0
je 0x4279de
mov ecx, dword [esi + 0xc]
mov edx, dword [ecx + 0x1c]
fild qword [edx]
jmp 0x4279fe
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4279ef
push 0
call fcn.0041be60
jmp 0x4279fe
mov esi, dword [0x515e64]
call fcn.0041bc20
mov esi, dword [esp + 0x1c]
push 0
fstp qword [esp + 0x44]
mov eax, ebx
call fcn.0041be60
fsub qword [esp + 0x40]
sub esp, 8
fstp qword [esp]
push ebx
call fcn.0041bd00
jmp 0x427473
mov eax, dword [esi + 0xc]
cmp dword [eax + 0x1c], 0
je 0x427a40
cmp byte [eax + 0x11], 0
jne 0x427a40
mov dword [esp + 0x20], 1
mov edi, 1
xor ebx, ebx
jmp 0x427a83
mov ebx, dword [0x515e14]
mov eax, dword [0x515e64]
mov dword [esp + 0x20], 0
test ebx, ebx
je 0x427a6f
cmp word [eax], 0
jne 0x427a6f
mov cl, byte [ebx + 0x17]
test cl, cl
jne 0x427a6a
mov ecx, dword [ebx + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
je 0x427aac
xor ebx, ebx
push 1
push 1
push 0
push 1
call fcn.004a7050
add esp, 0x10
mov edi, eax
mov ecx, dword [esp + 0x28]
push 1
call fcn.0041bd30
cmp edi, 2
je 0x427afd
cmp eax, 2
je 0x427afd
cmp dword [esp + 0x20], 0
je 0x427abb
mov edx, dword [esi + 0xc]
mov eax, dword [edx + 0x1c]
mov edi, dword [eax]
mov ebx, dword [eax + 4]
jmp 0x427add
test ebx, ebx
je 0x427a71
push 1
mov ecx, ebx
call fcn.0041bd30
jmp 0x427a81
test ebx, ebx
je 0x427aca
push 0
mov eax, ebx
call fcn.0041bde0
jmp 0x427ad9
mov esi, dword [0x515e64]
call fcn.0041bbf0
mov esi, dword [esp + 0x1c]
mov ebx, edx
mov edi, eax
mov eax, dword [esp + 0x28]
push 0
call fcn.0041bde0
push ebx
push edi
push edx
push eax
call fcn.004cbdb0
push edx
push eax
mov eax, dword [esp + 0x30]
push eax
jmp 0x42746e
cmp dword [esp + 0x20], 0
je 0x427b0e
mov ecx, dword [esi + 0xc]
mov edx, dword [ecx + 0x1c]
fild qword [edx]
jmp 0x427b2c
test ebx, ebx
je 0x427b1d
push 0
mov eax, ebx
call fcn.0041be60
jmp 0x427b2c
mov esi, dword [0x515e64]
call fcn.0041bc20
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x28]
fstp qword [esp + 0x40]
push 0
mov eax, edi
call fcn.0041be60
fmul qword [esp + 0x40]
sub esp, 8
fstp qword [esp]
push edi
call fcn.0041bd00
jmp 0x427473
mov eax, dword [esi + 0xc]
cmp dword [eax + 0x1c], 0
je 0x427b72
cmp byte [eax + 0x11], 0
jne 0x427b72
mov dword [esp + 0x20], 1
mov edi, 1
xor ebx, ebx
jmp 0x427bb5
mov ebx, dword [0x515e14]
mov eax, dword [0x515e64]
mov dword [esp + 0x20], 0
test ebx, ebx
je 0x427ba1
cmp word [eax], 0
jne 0x427ba1
mov cl, byte [ebx + 0x17]
test cl, cl
jne 0x427b9c
mov ecx, dword [ebx + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
je 0x427be6
xor ebx, ebx
push 1
push 1
push 0
push 1
call fcn.004a7050
add esp, 0x10
mov edi, eax
mov ecx, dword [esp + 0x28]
push 1
call fcn.0041bd30
cmp edi, 2
je 0x427c4b
cmp eax, 2
je 0x427c4b
cmp dword [esp + 0x20], 0
je 0x427bf5
mov edx, dword [esi + 0xc]
mov eax, dword [edx + 0x1c]
mov edi, dword [eax]
mov ebx, dword [eax + 4]
jmp 0x427c17
test ebx, ebx
je 0x427ba3
push 1
mov ecx, ebx
call fcn.0041bd30
jmp 0x427bb3
test ebx, ebx
je 0x427c04
push 0
mov eax, ebx
call fcn.0041bde0
jmp 0x427c13
mov esi, dword [0x515e64]
call fcn.0041bbf0
mov esi, dword [esp + 0x1c]
mov ebx, edx
mov edi, eax
mov eax, edi
or eax, ebx
jne 0x427c2b
mov ecx, dword [esp + 0x28]
call fcn.0041bc60
jmp 0x427473
mov eax, dword [esp + 0x28]
push 0
call fcn.0041bde0
push ebx
push edi
push edx
push eax
call fcn.004d3d10
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
jmp 0x42746e
cmp dword [esp + 0x20], 0
je 0x427c5c
mov edx, dword [esi + 0xc]
mov eax, dword [edx + 0x1c]
fild qword [eax]
jmp 0x427c7a
test ebx, ebx
je 0x427c6b
push 0
mov eax, ebx
call fcn.0041be60
jmp 0x427c7a
mov esi, dword [0x515e64]
call fcn.0041bc20
mov esi, dword [esp + 0x1c]
fst qword [esp + 0x40]
fldz
fucompp
fnstsw ax
test ah, 0x44
jp 0x427c97
mov ecx, dword [esp + 0x28]
call fcn.0041bc60
jmp 0x427473
mov edi, dword [esp + 0x28]
push 0
mov eax, edi
call fcn.0041be60
fdiv qword [esp + 0x40]
sub esp, 8
fstp qword [esp]
push edi
call fcn.0041bd00
jmp 0x427473
mov edi, 2
mov ecx, esi
call fcn.00422540
mov ebx, eax
test ebx, ebx
jns 0x427ccf
xor ebx, ebx
jmp 0x427ce1
mov edi, 1
mov ecx, esi
call fcn.004224c0
cmp ebx, eax
jle 0x427ce1
mov ebx, eax
push 1
push 0
push ebx
mov ecx, dword [0x515e64]
mov edx, dword [esp + 0x34]
push ecx
push edx
call fcn.004aa2a0
jmp 0x427473
mov edi, 2
mov ecx, esi
call fcn.00422540
mov ebx, eax
test ebx, ebx
jns 0x427d10
xor ebx, ebx
mov edi, 1
mov ecx, esi
call fcn.004224c0
cmp ebx, eax
jbe 0x427d22
mov ebx, eax
mov ecx, dword [0x515e64]
mov edx, dword [esp + 0x28]
push 1
push 0
sub eax, ebx
push ebx
lea eax, [ecx + eax*2]
push eax
push edx
call fcn.004aa2a0
jmp 0x427473
cmp byte [esi + 2], 4
jb 0x427d75
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x34]
cmp word [ecx], 0
je 0x427d75
mov edi, 3
mov ecx, esi
call fcn.00422540
mov dword [esp + 0x20], eax
cmp eax, 1
jge 0x427d7d
mov ecx, ebx
call fcn.0041bc60
jmp 0x427473
mov dword [esp + 0x20], SysStringLen
mov edi, 2
mov ecx, esi
call fcn.00422540
mov edx, dword [0x515e70]
mov ebx, eax
mov ax, word [edx]
call fcn.00409dc0
cmp ax, 0x4c
jne 0x427dcc
cmp ebx, 1
jge 0x427db2
mov ecx, dword [esp + 0x28]
call fcn.0041bc60
jmp 0x427473
mov eax, dword [esp + 0x20]
mov ecx, 1
sub ecx, eax
add ebx, ecx
cmp ebx, 1
jge 0x427dd6
lea edx, [eax + ebx - 1]
mov dword [esp + 0x20], edx
cmp ebx, 1
jge 0x427dd6
mov ebx, 1
mov edi, 1
mov ecx, esi
call fcn.004224c0
cmp eax, ebx
jae 0x427df4
mov ecx, dword [esp + 0x28]
call fcn.0041bc60
jmp 0x427473
mov ecx, edi
sub ecx, ebx
add eax, ecx
cmp dword [esp + 0x20], eax
jbe 0x427e04
mov dword [esp + 0x20], eax
mov edx, dword [0x515e64]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
push 1
push 0
push eax
lea ebx, [edx + ebx*2 - 2]
push ebx
push ecx
call fcn.004aa2a0
jmp 0x427473
mov edi, 2
mov ecx, esi
call fcn.00422540
mov ebx, eax
test ebx, ebx
jns 0x427e3b
xor ebx, ebx
mov edi, 1
mov ecx, esi
call fcn.004224c0
cmp ebx, eax
jbe 0x427e4d
mov ebx, eax
mov edx, dword [0x515e64]
push 1
push 0
sub eax, ebx
push eax
mov eax, dword [esp + 0x34]
lea ecx, [edx + ebx*2]
push ecx
push eax
call fcn.004aa2a0
jmp 0x427473
mov edi, 2
mov ecx, esi
call fcn.00422540
mov ebx, eax
test ebx, ebx
jns 0x427e81
xor ebx, ebx
mov edi, 1
mov ecx, esi
call fcn.004224c0
cmp ebx, eax
jbe 0x427e93
mov ebx, eax
push 1
push 0
sub eax, ebx
push eax
jmp 0x427ce6
push 1
push 1
mov ecx, ebx
call fcn.004016f0
mov edi, eax
cmp edi, dword [0x515e64]
jne 0x427ec5
mov al, byte [ebx + 0x17]
test al, al
jne 0x427ec1
mov eax, dword [ebx + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
je 0x427f11
push 1
push 0
mov edi, 1
mov ecx, esi
call fcn.004224c0
push eax
push 0
push ebx
call fcn.004aa2a0
cmp eax, edi
jne case.0x4270dc.8
push 0
push edi
mov ecx, ebx
call fcn.004016f0
mov ecx, dword [0x515e64]
mov edi, eax
mov edx, edi
lea ebx, [ebx]
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
test ax, ax
jne 0x427f00
mov ecx, dword [0x515e68]
movzx eax, word [ecx]
test ax, ax
je 0x427f40
call fcn.00409dc0
cmp ax, 0x54
jne 0x427f40
mov edx, dword [0x515e68]
cmp word [edx + 2], 0
jne 0x427f40
mov eax, edi
call fcn.0041ba40
jmp 0x427f55
cmp word [esi], 0x31
push edi
jne 0x427f4f
call dword [sym.imp.USER32.dll_CharLowerW]
jmp 0x427f55
call dword [sym.imp.USER32.dll_CharUpperW]
cmp byte [ebx + 0x17], 0
jne 0x427f5e
mov ebx, dword [ebx + 0xc]
cmp byte [ebx + 0x17], 2
jne 0x427f7c
cmp dword [0x5179f4], 0
je 0x427f7c
mov ecx, 0x5179e8
call fcn.00404c10
jmp 0x427473
and byte [ebx + 0x15], 0x86
mov eax, 1
jmp 0x427473
mov eax, dword [0x515e14]
test eax, eax
je 0x427fb5
cmp byte [eax + 0x17], 0
jne 0x427fa1
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x15]
jmp 0x427fa4
mov cl, byte [eax + 0x15]
test cl, 1
je 0x427fb5
call fcn.0041c0c0
push 0
jmp 0x42746c
mov edi, 1
mov ecx, esi
call fcn.004224c0
push 0
jmp 0x42746c
mov edi, dword [0x515e6c]
movzx eax, word [edi]
mov dword [esp + 0x40], edi
mov dword [esp + 0x2c], 0xffffffff
test ax, ax
je 0x428066
call fcn.00409dc0
movzx edx, ax
push edx
push 0x4ebe10
call fcn.004c5cc1
add esp, 8
test eax, eax
je 0x428066
cmp word [edi + 2], 0
je 0x428066
lea esi, [edi + 2]
call fcn.0040f170
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x34], eax
test eax, eax
jle 0x428177
mov eax, dword [0x515e68]
cmp word [eax], 0
jne 0x428070
mov dword [esp + 0x2c], 0
mov eax, 0x4e1a5c
mov edx, dword [0x5166e0]
push 1
push 0
push 0xffffffffffffffff
push eax
push edx
call fcn.004aa2a0
mov eax, dword [esp + 0x2c]
cdq
push 0x18
push edx
push eax
mov eax, dword [esp + 0x34]
call fcn.00401590
mov edi, 1
jmp 0x42747d
mov dword [esp + 0x34], 1
jmp 0x42801f
mov ecx, dword [0x515e64]
mov dword [esp + 0x1c], ecx
mov edi, 4
mov ecx, esi
mov dword [esp + 0x30], eax
call fcn.00422540
mov ebx, eax
test ebx, ebx
jns 0x428092
xor ebx, ebx
mov edi, 1
mov ecx, esi
call fcn.004224c0
mov edi, eax
cmp ebx, edi
jge 0x428177
mov edx, dword [esp + 0x40]
movzx eax, word [edx]
cmp eax, 0x31
je 0x42813c
call fcn.00409dc0
cmp ax, 0x52
je 0x42813c
mov edi, 2
mov ecx, esi
call fcn.004224c0
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x1c]
mov edi, 1
lea ecx, [eax + ebx*2]
jmp 0x4280f0
mov edx, dword [0x51161c]
mov al, byte [edx + 0xf2]
test al, al
jne 0x42810b
mov eax, dword [esp + 0x30]
call fcn.004a75a0
jmp 0x428128
cmp al, 2
mov eax, dword [esp + 0x30]
jne 0x42811e
push ecx
call fcn.004a7810
add esp, 4
jmp 0x428128
push eax
push ecx
call fcn.004c5ce8
add esp, 8
test eax, eax
je 0x428177
cmp edi, dword [esp + 0x34]
je 0x428163
mov ecx, dword [esp + 0x40]
inc edi
lea ecx, [eax + ecx*2]
jmp 0x4280f0
mov eax, dword [esp + 0x20]
movzx ecx, byte [eax + 0xf2]
mov edx, dword [esp + 0x34]
push edx
mov edx, dword [esp + 0x34]
push ecx
mov ecx, dword [esp + 0x24]
push edx
mov eax, edi
sub eax, ebx
push ecx
call fcn.004a7390
add esp, 0x10
test eax, eax
je 0x428177
sub eax, dword [esp + 0x1c]
sar eax, 1
mov dword [esp + 0x2c], eax
jns 0x428032
mov eax, 0x4e6784
jmp 0x428037
push esi
call fcn.0043d780
jmp 0x427473
mov eax, dword [0x515e68]
mov ecx, dword [0x515e6c]
mov edx, dword [0x515e64]
push eax
call fcn.00433230
jmp 0x427473
mov ecx, dword [0x515e6c]
mov edx, dword [0x515e68]
mov eax, dword [0x515e60]
push ecx
mov ecx, dword [0x515e64]
push edx
push esi
call fcn.0043d9a0
jmp 0x427473
mov eax, dword [0x515e60]
push eax
mov eax, esi
call fcn.0043e130
jmp 0x427473
mov ecx, dword [0x515e60]
push ecx
mov ecx, dword [0x515e64]
push esi
call fcn.0043e760
jmp 0x427473
push 0
push ecx
mov edi, 7
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
mov edi, 6
mov ecx, esi
call fcn.00422540
push eax
push ecx
mov edi, 5
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
mov edi, 4
mov ecx, esi
call fcn.00422540
push eax
push ecx
mov edi, 3
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
mov edi, 2
mov ecx, esi
call fcn.00422540
mov ecx, dword [0x515e80]
push eax
push esi
call fcn.0048b760
jmp 0x427473
mov edx, dword [0x515e78]
push edx
push ecx
mov edi, 5
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
mov edi, 4
mov ecx, esi
call fcn.00422540
push eax
push ecx
mov edi, 3
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
mov edi, 2
mov ecx, esi
call fcn.00422540
push eax
push esi
call fcn.00485750
jmp 0x427473
mov eax, dword [0x515e6c]
push eax
push ecx
mov edi, 2
mov ecx, esi
call fcn.00422540
add esp, 4
push eax
mov edi, 1
mov ecx, esi
call fcn.00422540
push eax
push esi
call fcn.00496880
jmp 0x427473
mov edx, dword [edi + 0xd4]
xor eax, eax
cmp ecx, 0x42
mov ecx, dword [0x515e60]
sete al
push 0
push edx
push eax
push ecx
call fcn.0040f610
add esp, 0x10
mov edi, 1
jmp 0x42747d
mov eax, dword [0x515e60]
xor edx, edx
cmp dword [edi + 0xd4], 3
push 0
sete dl
lea edx, [edx + edx + 1]
push edx
push 0
push eax
call fcn.0040f610
add esp, 0x10
mov edi, 1
jmp 0x42747d
mov ecx, dword [0x515e60]
push 0
push 2
push 0
push ecx
call fcn.0040f610
add esp, 0x10
mov edi, 1
jmp 0x42747d
mov edx, dword [0x515e60]
push 0
push 0
push 0
push edx
call fcn.0040f610
add esp, 0x10
mov edi, 1
jmp 0x42747d
mov eax, dword [0x515e60]
push eax
call fcn.00411880
add esp, 4
jmp 0x427473
mov edx, dword [0x515e78]
mov eax, dword [0x515e74]
push 0x4e1a4c
push 0x4e1a4c
push edx
mov edx, dword [0x515e70]
push eax
mov eax, dword [0x515e6c]
push edx
mov edx, dword [0x515e68]
push eax
mov eax, dword [0x515e64]
push edx
mov edx, dword [0x515e60]
push eax
push ecx
call fcn.00411af0
add esp, 0x24
jmp 0x427473
mov edx, dword [0x515e74]
mov eax, dword [0x515e6c]
push edx
mov edx, dword [0x515e78]
push eax
mov eax, dword [0x515e70]
push edx
mov edx, dword [0x515e68]
push eax
mov eax, dword [0x515e64]
push 0x4e1a4c
push 0x4e1a4c
push edx
mov edx, dword [0x515e60]
push eax
push ecx
call fcn.00411af0
add esp, 0x24
jmp 0x427473
mov edx, dword [0x515e6c]
mov eax, dword [0x515e68]
push 0x4e1a4c
push 0x4e1a4c
push edx
mov edx, dword [0x515e64]
push eax
mov eax, dword [0x515e60]
push 0x4e1a4c
push 0x4e1a4c
push edx
push eax
push ecx
mov edx, 0x4e1a4c
call fcn.00411af0
add esp, 0x24
jmp 0x427473
mov edi, 4
mov ecx, esi
call fcn.00422540
push eax
mov ecx, esi
call fcn.0043c730
jmp 0x427473
mov eax, dword [0x515e64]
mov ebx, dword [0x515e68]
mov esi, dword [0x515e60]
cmp ecx, 0x76
push 0
sete cl
movzx edx, cl
push 0
push edx
push eax
mov eax, dword [0x515e6c]
push edi
call fcn.004aafe0
add esp, 0x14
test eax, eax
je 0x4284b8
mov ecx, dword [0x51161c]
mov eax, dword [ecx + 0x54]
cmp eax, 0xffffffff
jle 0x4284b8
push 1
push eax
call fcn.00401930
add esp, 8
mov esi, dword [esp + 0x1c]
mov edi, 1
jmp 0x42747d
push 9
push str.3:9_r5__
call fcn.0049fc00
mov edx, dword [0x515e60]
add esp, 4
push eax
push edx
call fcn.004c56eb
add esp, 0xc
test eax, eax
jne 0x428504
mov eax, dword [0x515e64]
cmp word [eax], 0
jne 0x428504
mov ecx, dword [0x515e6c]
cmp word [ecx], 0
jne 0x428504
mov bl, 1
jmp 0x428506
xor bl, bl
movzx eax, word [esi]
xor edx, edx
test bl, bl
setne dl
mov ecx, 0x82
dec edx
and edx, 0x14
mov dword [esp + 0x34], edx
cmp ax, cx
je 0x428580
mov edx, 0x83
cmp ax, dx
je 0x428580
mov eax, dword [0x515e68]
cmp word [eax], 0
je 0x4285c7
movzx eax, word [esi]
mov edx, 0x82
cmp ax, dx
je 0x42862b
mov ecx, 0x83
cmp ax, cx
je 0x42862b
mov edx, dword [0x515e68]
mov ecx, dword [0x515e64]
push edx
mov edx, dword [0x515e60]
push ecx
mov ecx, dword [0x515e6c]
mov edi, eax
call fcn.00435b60
jmp 0x427473
mov ecx, dword [0x515e68]
cmp word [ecx], 0
je 0x4285b7
mov edi, 2
mov ecx, esi
call fcn.004225f0
fmul qword [0x50a098]
call fcn.004d3dc0
mov edi, dword [esp + 0x20]
mov dword [esp + 0x34], eax
test eax, eax
jne 0x4285b7
mov dword [esp + 0x34], 0x1f4
mov edx, dword [0x515e70]
cmp word [edx], 0
jne 0x42853b
test bl, bl
je 0x42853b
mov eax, dword [0x515e60]
add eax, 0x12
call fcn.00409e40
cmp word [eax], 0
mov dword [esp + 0x40], eax
je 0x42853b
mov ebx, dword [0x516ee0]
test ebx, ebx
je 0x42853b
mov eax, dword [esp + 0x40]
mov ecx, dword [ebx + 4]
push eax
push ecx
call fcn.004c4e9d
add esp, 8
test eax, eax
je 0x428619
mov ebx, dword [ebx + 0x14]
test ebx, ebx
jne 0x4285f8
jmp 0x42853b
mov edx, dword [esp + 0x34]
mov cx, word [esi]
push ebx
call fcn.004ad060
jmp 0x427473
mov ebx, dword [0x515e60]
mov edx, 0x83
cmp ax, dx
mov edx, dword [0x515e70]
sete al
movzx ecx, al
mov eax, dword [esp + 0x34]
push ecx
mov ecx, dword [0x515e64]
push edx
push eax
mov eax, dword [0x515e6c]
push ecx
push edi
call fcn.004ab2b0
add esp, 0x14
test eax, eax
je 0x42867e
mov edx, dword [0x51161c]
mov eax, dword [edx + 0x54]
cmp eax, 0xffffffff
jle 0x42867e
push 1
push eax
call fcn.00401930
add esp, 8
mov edi, 1
jmp 0x42747d
mov ebx, dword [0x515e64]
call fcn.00439fe0
jmp 0x427473
mov eax, dword [0x515e64]
mov ecx, dword [0x515e60]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
test eax, eax
sete dl
movzx eax, dl
push eax
push esi
call fcn.0042efe0
jmp 0x427473
lea ecx, [esp + 0xe8]
push ecx
push 0x3a98
push 1
push 0x4ebe3c
call fcn.0049fc00
add esp, 4
push eax
push 0
push 0x1a
push 0xffff
call dword [sym.imp.USER32.dll_SendMessageTimeoutW]
test eax, eax
sete dl
movzx eax, dl
push eax
push esi
call fcn.0042efe0
jmp 0x427473
mov ecx, dword [0x515e64]
mov edx, dword [0x515e60]
push ecx
push edx
push esi
call fcn.004534e0
jmp 0x427473
mov eax, dword [0x515e60]
mov ecx, 0x5179a8
call fcn.0049fb50
mov eax, dword [0x515e64]
mov ecx, 0x5179b4
call fcn.0049fb50
mov eax, dword [0x515e68]
mov ecx, 0x5179c0
call fcn.0049fb50
mov edi, 1
jmp 0x42747d
mov eax, dword [0x51949c]
mov ecx, dword [0x515e68]
call fcn.004a75a0
test eax, eax
push 0
setne bl
push 0
push 0
mov al, 3
cmp al, byte [esi + 2]
mov eax, dword [0x515e68]
sbb ecx, ecx
and ecx, dword [0x515e1c]
mov byte [esp + 0xd4], bl
mov edx, dword [esp + 0xd4]
push ecx
push 1
push edx
push 0
test bl, bl
sete cl
push eax
mov eax, dword [0x515e64]
movzx edx, cl
mov ecx, dword [0x515e60]
push edx
push eax
push 0
push 0x516ea8
call fcn.00430130
test bl, bl
je 0x427473
test eax, eax
je 0x4287db
mov ecx, dword [0x5166e0]
push 1
push 0
push 0xffffffffffffffff
mov eax, 0x4e1a5c
push eax
push ecx
call fcn.004aa2a0
jmp 0x427473
push 0x4ebe64
call fcn.0049fc00
mov ecx, dword [0x5166e0]
add esp, 4
push 1
push 0
push 0xffffffffffffffff
push eax
push ecx
call fcn.004aa2a0
jmp 0x427473
push esi
call fcn.00435c40
jmp 0x427473
cmp byte [esi + 2], 2
jbe 0x42884d
mov edx, dword [0x515e78]
mov eax, dword [0x515e74]
mov ecx, dword [0x515e70]
push edx
mov edx, dword [0x515e6c]
push eax
mov eax, dword [0x515e68]
push ecx
mov ecx, dword [0x515e7c]
push edx
mov edx, dword [0x515e60]
push eax
mov eax, dword [0x515e64]
call fcn.004369b0
jmp 0x427473
mov ecx, dword [0x515e64]
mov edx, dword [0x515e60]
push 0x4e1a4c
push 0x4e1a4c
push 0x4e1a4c
push ecx
mov ecx, 0x4e1a4c
push edx
mov eax, ecx
mov edx, ecx
call fcn.004369b0
jmp 0x427473
mov eax, dword [0x515e88]
mov ecx, dword [0x515e84]
mov edx, dword [0x515e80]
push eax
mov eax, dword [0x515e7c]
push ecx
mov ecx, dword [0x515e78]
push edx
mov edx, dword [0x515e6c]
push eax
mov eax, dword [0x515e68]
push ecx
mov ecx, dword [0x515e64]
push edx
mov edx, dword [0x515e60]
push eax
push ecx
mov ecx, dword [0x515e70]
push edx
mov edx, dword [0x515e74]
push esi
call fcn.004521c0
jmp 0x427473
mov edx, dword [0x515e6c]
xor eax, eax
cmp ecx, 0x47
mov ecx, dword [0x515e70]
sete al
push eax
mov eax, dword [0x515e64]
push ecx
mov ecx, dword [0x515e60]
push edx
mov edx, dword [0x515e68]
push eax
push ecx
mov ecx, dword [0x515e74]
push esi
call fcn.00436af0
jmp 0x427473
mov esi, dword [0x515e6c]
push 1
xor bl, bl
call fcn.0040f1a0
add esp, 4
mov byte [esp + 0xd8], al
test al, al
jne 0x428953
mov edx, dword [0x515e6c]
push edx
push 0
push 0x4ebe80
call fcn.0049fc00
mov ecx, dword [esp + 0x28]
add esp, 4
push eax
call fcn.0042f1b0
mov edi, eax
mov esi, dword [esp + 0x1c]
jmp 0x427475
mov eax, dword [0x515e70]
cmp word [eax], 0
je 0x42896e
mov ecx, dword [esp + 0x1c]
mov edi, 4
call fcn.00422540
jmp 0x428973
mov eax, 1
mov ecx, dword [0x515e78]
mov edx, dword [0x515e68]
push ecx
mov ecx, dword [0x515e60]
push edx
mov edx, dword [0x515e74]
push ecx
mov ecx, dword [esp + 0x28]
push edx
mov edx, dword [0x515e64]
push eax
mov eax, dword [esp + 0xec]
push eax
push ecx
mov ecx, dword [0x515e7c]
call fcn.00436bb0
mov esi, dword [esp + 0x1c]
jmp 0x427473
mov edx, dword [0x515e7c]
mov eax, dword [0x515e78]
mov ecx, dword [0x515e70]
push edx
mov edx, dword [0x515e6c]
push eax
mov eax, dword [0x515e68]
push ecx
mov ecx, dword [0x515e64]
push edx
mov edx, dword [0x515e60]
push eax
push ecx
mov ecx, dword [0x515e80]
push edx
mov edx, dword [0x515e74]
push esi
call fcn.00437230
jmp 0x427473
mov eax, dword [0x515e80]
mov ecx, dword [0x515e7c]
mov edx, dword [0x515e78]
push eax
mov eax, dword [0x515e74]
push ecx
mov ecx, dword [0x515e70]
push edx
push eax
push ecx
mov ecx, esi
call fcn.00437460
jmp 0x427473
mov edx, dword [0x515e70]
mov eax, dword [0x515e6c]
mov ecx, dword [0x515e68]
push edx
mov edx, dword [0x515e64]
push eax
push ecx
push edx
push esi
call fcn.004375b0
jmp 0x427473
mov eax, dword [0x515e6c]
mov ecx, dword [0x515e68]
mov edx, dword [0x515e60]
push eax
push ecx
mov ecx, dword [0x515e70]
push edx
mov edx, dword [0x515e64]
push esi
call fcn.00437790
jmp 0x427473
mov eax, dword [0x515e70]
mov ecx, dword [0x515e6c]
mov edx, dword [0x515e64]
push eax
push ecx
mov ecx, dword [0x515e74]
push edx
mov edx, dword [0x515e68]
push esi
mov esi, dword [0x515e60]
call fcn.004378a0
mov esi, dword [esp + 0x1c]
jmp 0x427473
mov eax, dword [0x515e70]
mov ecx, dword [0x515e64]
mov edx, dword [0x515e68]
push eax
mov eax, dword [0x515e6c]
push ecx
mov ecx, dword [0x515e74]
push esi
call fcn.00437960
jmp 0x427473
mov edx, dword [0x515e78]
mov eax, dword [0x515e74]
mov ecx, dword [0x515e70]
push edx
mov edx, dword [0x515e6c]
push eax
mov eax, dword [0x515e68]
push ecx
mov ecx, dword [0x515e64]
push edx
mov edx, dword [0x515e60]
push eax
push esi
call fcn.004524c0
jmp 0x427473
mov ecx, dword [0x515e7c]
mov edx, dword [0x515e78]
mov eax, dword [0x515e74]
push ecx
mov ecx, dword [0x515e70]
push edx
mov edx, dword [0x515e6c]
push eax
mov eax, dword [0x515e68]
push ecx
mov ecx, dword [0x515e64]
push edx
push eax
push esi
call fcn.00452c90
jmp 0x427473
mov ecx, dword [0x515e70]
mov eax, dword [0x515e6c]
mov edx, dword [0x515e68]
mov edi, dword [0x515e64]
push ecx
mov ecx, dword [0x515e74]
call fcn.00438110
jmp 0x427473
mov edx, dword [0x515e78]
mov eax, dword [0x515e74]
mov ecx, dword [0x515e70]
push edx
mov edx, dword [0x515e68]
push eax
mov eax, dword [0x515e64]
push ecx
mov ecx, dword [0x515e60]
push edx
mov edx, dword [0x515e6c]
push eax
push ecx
mov ecx, dword [0x515e7c]
call fcn.00438190
jmp 0x427473
mov edx, 0x90
cmp cx, dx
sete al
movzx ecx, al
push ecx
mov ebx, esi
call fcn.004382d0
jmp 0x427473
mov edx, dword [0x515e64]
mov ecx, dword [0x515e68]
push edx
mov edx, dword [0x515e60]
push esi
call fcn.00438580
jmp 0x427473
mov eax, dword [0x515e74]
mov ecx, dword [0x515e70]
mov edx, dword [0x515e6c]
push eax
mov eax, dword [0x515e68]
push ecx
mov ecx, dword [0x515e64]
push edx
mov edx, dword [0x515e60]
push eax
push esi
call fcn.00438c20
jmp 0x427473
cmp byte [esi + 2], 1
jbe 0x428c49
mov ecx, dword [0x515e6c]
mov edx, dword [0x515e68]
mov eax, dword [0x515e64]
push ecx
mov ecx, dword [0x515e70]
push edx
mov edx, dword [0x515e60]
call fcn.00439010
jmp 0x427473
mov edi, dword [0x515e60]
mov ecx, 0x4e1a4c
push 0x4e1a4c
mov eax, ecx
mov edx, ecx
call fcn.00443bd0
test eax, eax
je 0x428c6e
push edi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov eax, 1
jmp 0x427473
mov eax, dword [0x515e6c]
mov ecx, dword [0x515e70]
mov edx, dword [0x515e64]
push eax
mov eax, dword [0x515e68]
call fcn.00439040
jmp 0x427473
mov ecx, dword [0x515e6c]
mov eax, dword [0x515e68]
mov edx, dword [0x515e64]
push ecx
mov ecx, dword [0x515e70]
call fcn.004391a0
jmp 0x427473
mov edx, dword [0x515e70]
mov eax, dword [0x515e6c]
mov ecx, dword [0x515e64]
push edx
mov edx, dword [0x515e68]
push eax
push ecx
mov ecx, dword [0x515e74]
push esi
call fcn.004392c0
jmp 0x427473
mov edx, dword [0x515e6c]
mov ecx, dword [0x515e70]
mov eax, dword [0x515e68]
push edx
mov edx, dword [0x515e64]
push esi
call fcn.00439c30
jmp 0x427473
mov eax, dword [0x515e7c]
mov ecx, dword [0x515e78]
mov edx, dword [0x515e74]
push eax
mov eax, dword [0x515e70]
push ecx
push edx
push eax
mov eax, esi
call fcn.00439e60
jmp 0x427473
mov ecx, dword [0x515e68]
push ecx
mov ecx, dword [0x515e64]
push esi
call fcn.0043a0c0
jmp 0x427473
push 0
push 0x1a3
push 0x111
push 0
push 0x4e9994
call fcn.0049fc00
add esp, 4
push eax
call dword [sym.imp.USER32.dll_FindWindowW]
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
mov edx, dword [0x51161c]
mov eax, dword [edx + 0x54]
cmp eax, 0xffffffff
jle 0x42867e
push 1
push eax
call fcn.00401930
add esp, 8
mov edi, 1
jmp 0x42747d
push 0
push 0x1a0
push 0x111
push 0
push 0x4e9994
call fcn.0049fc00
add esp, 4
push eax
call dword [sym.imp.USER32.dll_FindWindowW]
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
mov eax, dword [0x51161c]
mov eax, dword [eax + 0x54]
cmp eax, 0xffffffff
jle 0x42867e
push 1
push eax
call fcn.00401930
add esp, 8
mov edi, 1
jmp 0x42747d
mov eax, dword [esi + 0x10]
test eax, eax
jne 0x428e29
mov edi, dword [0x515e60]
cmp word [edi], ax
je 0x428e29
mov eax, 0x516ea8
call fcn.0041ecf0
test eax, eax
jne 0x428e29
mov ecx, dword [0x515e60]
push ecx
push 0
push 0x4e6ae0
call fcn.0049fc00
add esp, 4
push eax
mov ecx, esi
call fcn.0042f1b0
jmp 0x427473
mov dword [0x517938], eax
mov edi, 1
jmp 0x42747d
mov eax, dword [esi + 0x10]
mov dl, 1
cmp dl, byte [esi + 2]
mov edx, dword [0x515e68]
push eax
mov eax, dword [0x515e64]
push edx
mov edx, dword [0x515e60]
sbb ecx, ecx
and ecx, dword [0x515e14]
push eax
push edx
call fcn.0040b230
add esp, 0x10
jmp 0x427473
mov ebx, dword [esi + 0x10]
test ebx, ebx
jne 0x428ee5
mov ecx, dword [0x515e60]
push 0x516ea8
call fcn.0041ed30
mov ebx, eax
test ebx, ebx
jne 0x428ee5
mov eax, dword [0x515e60]
cmp word [eax], bx
je 0x428e97
push eax
jmp 0x428e0d
cmp byte [esi + 2], 0
jbe 0x428eba
mov eax, dword [esi + 0xc]
mov eax, dword [eax + 4]
cmp word [eax], 0
je 0x428eba
push 0x4e1a4c
push 0
push 0x4e7114
jmp 0x428e14
mov ebx, dword [edi + 0xbc]
test ebx, ebx
jne 0x428ee5
mov edi, dword [edi + 0xc0]
test edi, edi
je 0x428ed4
mov ebx, dword [edi]
test ebx, ebx
jne 0x428ee5
push 0x4e1a4c
push 0
push 0x4ebec0
jmp 0x428e14
mov eax, dword [0x515e64]
push 0
push 1
push 1
push 1
call fcn.004a7050
add esp, 0x10
test eax, eax
jne 0x428f95
mov esi, dword [0x515e64]
push eax
call fcn.00409ee0
add esp, 4
test eax, eax
jne 0x428f59
mov ecx, dword [0x515e64]
push str.Delete
push ecx
call fcn.004c4e9d
add esp, 8
test eax, eax
jne 0x428f46
push ebx
push 0x516ea8
call fcn.0041ec00
mov esi, dword [esp + 0x1c]
mov edi, 1
jmp 0x42747d
mov edx, dword [0x515e64]
push edx
push 0
push 0x4e7150
jmp 0x428936
jle 0x428f91
cmp eax, 2
jg 0x428f91
mov edx, dword [0x515e68]
cmp eax, 1
sete al
push 0
movzx ecx, al
push ecx
push edx
push 0x4e1a4c
push ebx
mov ecx, 0x516ea8
call fcn.0041e9d0
mov esi, dword [esp + 0x1c]
mov edi, 1
jmp 0x42747d
mov esi, dword [esp + 0x1c]
mov ecx, dword [0x515e64]
cmp word [ecx], 0
mov edx, dword [0x515e68]
jne 0x428fb1
cmp word [edx], 0
je 0x428fb1
mov al, 1
jmp 0x428fb3
xor al, al
push eax
push 1
push edx
push ecx
push ebx
mov ecx, 0x516ea8
call fcn.0041e9d0
mov edi, 1
jmp 0x42747d
mov eax, dword [0x515e60]
cmp word [eax], 0
mov ebx, 0x10
je 0x429002
push 0x4ebf2c
push eax
call fcn.004c4e9d
add esp, 8
test eax, eax
je 0x429002
xor edi, edi
mov ecx, esi
call fcn.00422540
mov edi, dword [esp + 0x20]
mov ebx, eax
test ebx, ebx
je 0x429007
mov eax, 1
mov byte [edi + 0xee], al
test al, al
je 0x429031
or eax, 0xffffffff
mov dword [edi + 0xd8], ebx
mov byte [edi + 0xec], 0
mov dword [edi], eax
mov dword [edi + 4], eax
mov dword [edi + 0x24], eax
lea edi, [eax + 2]
jmp 0x42747d
mov dword [edi + 0xd8], 5
mov byte [edi + 0xec], 1
mov edi, 1
jmp 0x42747d
mov esi, dword [0x515e60]
call fcn.0041caf0
dec eax
je 0x429100
dec eax
je 0x4290b4
dec eax
jne 0x429115
mov eax, dword [0x515e64]
cmp word [eax], 0
je 0x4290a0
mov ecx, dword [esp + 0x1c]
mov edi, 1
call fcn.00422540
or eax, edx
jne 0x42909c
mov esi, dword [esp + 0x1c]
mov eax, edi
mov edi, dword [esp + 0x20]
mov byte [edi + 0xed], al
mov edi, eax
jmp 0x42747d
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
xor eax, eax
mov byte [edi + 0xed], al
lea edi, [eax + 1]
jmp 0x42747d
mov ecx, dword [0x515e64]
cmp word [ecx], 0
je 0x4290d3
mov ecx, dword [esp + 0x1c]
mov edi, 1
call fcn.00422540
mov dword [0x51799c], eax
mov edx, dword [0x515e68]
cmp word [edx], 0
je 0x429115
mov ecx, dword [esp + 0x1c]
mov edi, 2
call fcn.00422540
mov esi, dword [esp + 0x1c]
mov dword [0x517998], eax
mov edi, 1
jmp 0x42747d
mov ecx, dword [esp + 0x1c]
mov edi, 1
call fcn.00422540
mov ecx, dword [esp + 0x20]
mov dword [ecx + 0x2c], eax
mov esi, dword [esp + 0x1c]
mov edi, 1
jmp 0x42747d
mov ebx, dword [esi + 0x10]
test ebx, ebx
jne 0x429146
mov edi, dword [0x515e60]
push 0x516ea8
mov cl, 1
call fcn.00423200
mov ebx, eax
test ebx, ebx
je case.0x4270dc.8
mov edi, dword [0x515e6c]
cmp word [edi], 0
je 0x429176
mov eax, dword [esi + 0x1c]
test eax, eax
jne 0x429173
mov eax, 0x516ea8
call fcn.0041ecf0
test eax, eax
jne 0x429173
mov edx, dword [0x515e6c]
push edx
jmp 0x428e0d
mov dword [ebx + 0x10], eax
mov eax, dword [0x515e74]
mov ecx, dword [0x515e70]
mov edx, dword [0x515e68]
push eax
mov eax, dword [0x515e64]
push ecx
push edx
push eax
push ebx
call fcn.004acd70
jmp 0x427473
mov edi, dword [esi + 0x10]
test edi, edi
jne 0x4291da
mov eax, dword [0x515e60]
mov ebx, eax
cmp word [eax], di
je 0x429215
mov edi, dword [0x516ee0]
test edi, edi
je 0x429215
mov ecx, dword [edi + 4]
push ebx
push ecx
call fcn.004c4e9d
add esp, 8
test eax, eax
je 0x4291da
mov edi, dword [edi + 0x14]
test edi, edi
jne 0x4291b8
mov edi, 1
jmp 0x42747d
mov eax, dword [0x515e64]
cmp word [eax], 0
je 0x42920b
push 0x4e756c
push eax
call fcn.004c4e9d
add esp, 8
test eax, eax
jne 0x42920b
mov al, 1
mov ecx, edi
push eax
call fcn.004ad3b0
mov edi, 1
jmp 0x42747d
xor al, al
mov ecx, edi
push eax
call fcn.004ad3b0
mov edi, 1
jmp 0x42747d
mov edi, dword [esi + 0x10]
test edi, edi
jne 0x429266
mov eax, dword [0x515e60]
mov ebx, eax
cmp word [eax], di
je 0x4292d3
mov edi, dword [0x516ee0]
test edi, edi
je 0x4292d3
mov edx, dword [edi + 4]
push ebx
push edx
call fcn.004c4e9d
add esp, 8
test eax, eax
je 0x429266
mov edi, dword [edi + 0x14]
test edi, edi
jne 0x429244
mov edi, 1
jmp 0x42747d
mov eax, dword [0x515e64]
cmp word [eax], 0
je 0x4292ca
push 0x4ebf34
push eax
call fcn.004c4e9d
add esp, 8
test eax, eax
jne 0x42929a
push edi
xor edx, edx
mov ecx, 0x82
call fcn.004ad060
mov edi, 1
jmp 0x42747d
mov eax, dword [0x515e64]
cmp word [eax], 0
je 0x4292ca
push 0x4e756c
push eax
call fcn.004c4e9d
add esp, 8
test eax, eax
jne 0x4292ca
mov al, 1
push eax
push edi
call fcn.004ad120
mov edi, 1
jmp 0x42747d
xor al, al
push eax
push edi
call fcn.004ad120
mov edi, 1
jmp 0x42747d
mov eax, dword [0x515e68]
push eax
mov eax, dword [0x515e64]
call fcn.0043f2f0
jmp 0x427473
test ebx, ebx
jne 0x42930a
lea edi, [ebx + 1]
mov ecx, esi
call fcn.00422540
call fcn.00414cf0
jmp 0x42747d
mov eax, dword [0x515e64]
push 0
push 1
push 0
push 1
call fcn.004a7050
add esp, 0x10
cmp eax, 2
je 0x429342
mov eax, dword [0x515e68]
push 0
push 1
push 0
push 1
call fcn.004a7050
add esp, 0x10
cmp eax, 2
jne 0x4293cf
mov ecx, dword [0x515e64]
cmp word [ecx], 0
je 0x42935c
mov edi, 1
mov ecx, esi
call fcn.004225f0
jmp 0x42935e
fldz
mov edx, dword [0x515e68]
fst qword [esp + 0x40]
cmp word [edx], 0
je 0x429399
mov edi, 2
fstp st(0)
mov ecx, esi
call fcn.004225f0
fst qword [esp + 0x68]
fld qword [esp + 0x40]
fxch st(1)
fcom st(1)
fnstsw ax
test ah, 5
jp 0x4293a5
fstp qword [esp + 0x40]
fstp qword [esp + 0x68]
jmp 0x4293a9
fld qword [0x50a140]
fst qword [esp + 0x68]
jmp 0x429386
fstp st(0)
fstp st(0)
call fcn.00414e60
fld qword [esp + 0x68]
fld qword [esp + 0x40]
sub esp, 8
fsub st(1), st(0)
fxch st(2)
fmulp st(1)
faddp st(1)
fstp qword [esp]
push ebx
call fcn.0041bd00
jmp 0x427473
mov eax, dword [0x515e64]
cmp word [eax], 0
je 0x4293ea
mov edi, 1
mov ecx, esi
call fcn.00422540
mov ebx, eax
jmp 0x4293ec
xor ebx, ebx
mov ecx, dword [0x515e68]
cmp word [ecx], 0
je 0x429408
mov edi, 2
mov ecx, esi
call fcn.00422540
mov esi, eax
jmp 0x42940d
mov esi, SysReAllocString
cmp ebx, esi
jle 0x429417
mov eax, ebx
mov ebx, esi
mov esi, eax
call fcn.00414e10
mov ecx, eax
mov eax, ebx
cdq
mov edi, eax
mov dword [esp + 0x40], edx
mov eax, esi
cdq
sub eax, edi
sbb edx, dword [esp + 0x40]
add eax, 1
adc edx, 0
push edx
push eax
push 0
push ecx
call fcn.004d47d0
add eax, ebx
cdq
push 0x18
push edx
push eax
mov eax, dword [esp + 0x34]
call fcn.00401590
mov esi, dword [esp + 0x1c]
mov edi, 1
jmp 0x42747d
mov ecx, dword [0x515e64]
push esi
mov bl, 1
call fcn.0043f410
jmp 0x427473
mov edx, dword [0x515e68]
mov eax, dword [0x515e64]
mov ecx, dword [0x515e60]
push edx
push esi
call fcn.0043f640
jmp 0x427473
mov ecx, dword [0x515e68]
mov edx, dword [0x515e64]
push esi
call fcn.0043f940
jmp 0x427473
mov eax, dword [0x515e6c]
mov edx, dword [0x515e64]
push eax
push edx
xor edx, edx
mov eax, 0x9b
cmp cx, ax
sete dl
dec edx
and edx, dword [0x515e60]
push edx
push esi
call fcn.0043ffa0
jmp 0x427473
mov eax, dword [0x515e64]
cmp word [eax], 0
je 0x4294ec
mov edi, 1
mov ecx, esi
call fcn.00422540
dec eax
jmp 0x4294ee
xor eax, eax
cdq
test edx, edx
jg 0x4294ff
jl 0x4294f9
test eax, eax
jae 0x4294ff
xor eax, eax
mov dword [esp + 0x44], eax
mov ecx, 0x9d
push eax
cmp word [esi], cx
jne 0x42951a
call fcn.00441110
mov esi, dword [esp + 0x1c]
mov edi, eax
jmp 0x427475
mov edi, dword [0x515e60]
mov ebx, esi
call fcn.004411c0
jmp 0x427473
mov edx, dword [0x515e64]
cmp word [edx], 0
je 0x429548
mov edi, 1
mov ecx, esi
call fcn.00422540
mov ebx, eax
jmp 0x42954d
mov ebx, 0x96
mov eax, dword [0x515e60]
cmp word [eax], 0
je 0x429573
xor edi, edi
mov ecx, esi
call fcn.00422540
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_Beep]
mov edi, 1
jmp 0x42747d
mov eax, 0x20b
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_Beep]
mov edi, 1
jmp 0x42747d
mov eax, dword [0x515e64]
cmp word [eax], 0
je 0x4295ac
push 0x4ebf38
push eax
call fcn.004c4e9d
add esp, 8
test eax, eax
je 0x4295d1
mov eax, dword [0x515e64]
push 0x4e6784
push eax
call fcn.004c4e9d
add esp, 8
test eax, eax
je 0x4295d1
xor al, al
push eax
mov eax, dword [0x515e60]
push esi
call fcn.00441320
jmp 0x427473
mov eax, 1
push eax
mov eax, dword [0x515e60]
push esi
call fcn.00441320
jmp 0x427473
cmp byte [esi + 2], 2
jae 0x4295f2
mov edi, dword [edi + 0x18]
jmp 0x4295f4
xor edi, edi
mov ecx, dword [0x515e60]
mov edx, dword [0x515e64]
push edi
push ecx
push edx
push esi
call fcn.00442680
jmp 0x427473
mov ecx, dword [0x515e64]
push esi
call fcn.00441d70
jmp 0x427473
mov eax, dword [0x515e64]
mov ecx, dword [0x515e68]
push eax
push esi
call fcn.004422f0
jmp 0x427473
mov esi, dword [0x515e60]
mov edi, dword [esp + 0x1c]
call fcn.00442a80
mov esi, dword [esp + 0x1c]
mov edi, eax
jmp 0x427475
mov eax, dword [0x515e60]
mov edi, esi
call fcn.004541e0
jmp 0x427473
mov ecx, dword [0x515e60]
movzx eax, word [ecx]
neg eax
sbb eax, eax
push 7
and eax, ecx
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHEmptyRecycleBinW]
test eax, eax
setne cl
movzx edx, cl
push edx
push esi
call fcn.0042efe0
jmp 0x427473
mov eax, dword [0x515e60]
mov ecx, dword [0x515e68]
mov edx, dword [0x515e64]
push eax
push esi
call fcn.00442af0
jmp 0x427473
add edi, 0x30
push edi
push 0
mov edi, 2
mov ecx, esi
call fcn.00422540
cmp eax, 1
mov eax, dword [0x515e64]
sete cl
movzx edx, cl
mov ecx, dword [0x515e60]
push edx
push eax
call fcn.00454870
add esp, 0x10
test eax, eax
jne 0x42972c
mov ecx, dword [0x5166e0]
push 1
push eax
push 0xffffffffffffffff
push 0x4e1a5c
push ecx
call fcn.004aa2a0
jmp 0x427473
add edi, 0x30
push edi
push 1
mov edi, 2
mov ecx, esi
call fcn.00422540
mov ecx, dword [0x515e64]
cmp eax, 1
sete dl
movzx eax, dl
push eax
push ecx
mov ecx, dword [0x515e60]
call fcn.00454870
add esp, 0x10
push eax
push esi
call fcn.0042f0a0
jmp 0x427473
push 0
push ecx
mov edi, 2
mov ecx, esi
call fcn.00422540
dec eax
add esp, 4
neg eax
sbb eax, eax
inc eax
mov edx, dword [0x515e64]
push eax
mov eax, dword [0x515e60]
push edx
push eax
call fcn.004544c0
add esp, 0x10
test al, al
sete cl
movzx edx, cl
push edx
push esi
call fcn.0042efe0
jmp 0x427473
mov eax, dword [0x515e68]
mov ax, word [eax]
call fcn.00409dc0
cmp ax, 0x52
jne 0x4297b5
mov ecx, dword [0x515e64]
mov edx, dword [0x515e60]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
sete al
movzx ecx, al
push ecx
push esi
call fcn.0042efe0
jmp 0x427473
push 1
push ecx
mov edi, 2
mov ecx, esi
call fcn.00422540
add esp, 4
jmp 0x429750
mov eax, dword [0x515e60]
push 0
push eax
call fcn.00441c90
add esp, 8
test al, al
sete cl
mov byte [esp + 0x7c], cl
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [0x51161c]
mov dword [edx + 0x30], eax
mov eax, dword [esp + 0x7c]
push eax
push esi
call fcn.0042efe0
jmp 0x427473
mov ecx, dword [0x515e60]
cmp word [ecx], 0
je 0x429841
mov edi, 1
mov ecx, esi
call fcn.00422540
cmp eax, edi
sete dl
movzx eax, dl
push eax
mov eax, dword [0x515e60]
call fcn.00454780
add esp, 4
test al, al
je 0x429841
xor al, al
push eax
push esi
call fcn.0042efe0
jmp 0x427473
mov eax, 1
push eax
push esi
call fcn.0042efe0
jmp 0x427473
mov eax, dword [0x515e64]
cmp word [eax], 0
jne 0x42986f
mov edi, dword [edi + 0x10]
lea eax, [edi + 0x250]
test edi, edi
jne 0x42986f
mov eax, 0x4e1a4c
mov edi, esi
call fcn.00442e70
jmp 0x427473
mov ebx, dword [0x515e64]
cmp word [ebx], 0
jne 0x429899
mov edi, dword [edi + 0x10]
lea ebx, [edi + 0x250]
test edi, edi
jne 0x429899
mov ebx, 0x4e1a4c
mov edi, 3
mov ecx, esi
call fcn.00422540
mov esi, dword [0x515e68]
cmp eax, 1
sete cl
movzx edx, cl
push edx
call fcn.0041cd70
push eax
mov eax, dword [esp + 0x24]
push ebx
push eax
mov eax, dword [0x515e60]
call fcn.00442f80
mov esi, dword [esp + 0x1c]
mov edi, eax
jmp 0x427475
mov eax, dword [0x515e64]
cmp word [eax], 0
jne 0x4298f3
mov edi, dword [edi + 0x10]
lea eax, [edi + 0x250]
test edi, edi
jne 0x4298f3
mov eax, 0x4e1a4c
mov ecx, dword [0x515e68]
movzx edx, word [ecx]
push edx
mov edi, esi
call fcn.004435f0
jmp 0x427473
mov ebx, dword [0x515e64]
cmp word [ebx], 0
jne 0x429927
mov edi, dword [edi + 0x10]
lea ebx, [edi + 0x250]
test edi, edi
jne 0x429927
mov ebx, 0x4e1a4c
mov edi, 4
mov ecx, esi
call fcn.00422540
mov esi, dword [0x515e6c]
cmp eax, 1
sete al
movzx ecx, al
push ecx
call fcn.0041cd70
mov edx, dword [0x515e68]
mov edi, dword [esp + 0x20]
push eax
movzx eax, word [edx]
push eax
mov eax, dword [0x515e60]
push ebx
call fcn.00443770
mov esi, dword [esp + 0x1c]
mov edi, eax
jmp 0x427475
mov eax, dword [0x515e64]
cmp word [eax], 0
je 0x42998c
mov ecx, dword [0x515e68]
push ecx
mov edi, eax
push esi
call fcn.00443930
jmp 0x427473
mov edi, dword [edi + 0x10]
test edi, edi
je 0x4299ab
mov ecx, dword [0x515e68]
push ecx
add edi, 0x250
push esi
call fcn.00443930
jmp 0x427473
mov ecx, dword [0x515e68]
push ecx
mov edi, 0x4e1a4c
push esi
call fcn.00443930
jmp 0x427473
mov eax, dword [0x515e64]
cmp word [eax], 0
jne 0x4299df
mov edi, dword [edi + 0x10]
lea eax, [edi + 0x250]
test edi, edi
jne 0x4299df
mov eax, 0x4e1a4c
push esi
call fcn.004542f0
jmp 0x427473
mov eax, dword [0x515e60]
call fcn.00441530
xor edx, edx
cmp dword [edi + 0x104], edx
sete dl
mov edi, edx
jmp 0x427475
mov eax, dword [0x515e70]
mov ecx, dword [0x515e64]
mov edx, dword [0x515e68]
push eax
push ecx
mov ecx, dword [0x515e6c]
push esi
call fcn.004415f0
jmp 0x427473
mov edx, dword [0x515e68]
mov eax, dword [0x515e64]
mov ecx, dword [0x515e6c]
push edx
push eax
mov edx, esi
call fcn.00453930
jmp 0x427473
mov ecx, dword [0x515e60]
push ecx
push esi
call fcn.00453c50
jmp 0x427473
mov edx, dword [0x515e80]
mov eax, dword [0x515e7c]
mov ecx, dword [0x515e78]
mov ebx, dword [0x515e70]
mov edi, dword [0x515e6c]
push edx
mov edx, dword [0x515e74]
push eax
mov eax, dword [0x515e64]
push ecx
mov ecx, dword [0x515e60]
push edx
push eax
push ecx
mov ecx, dword [0x515e68]
push esi
call fcn.00453f90
jmp 0x427473
push 0
mov ecx, 4
call fcn.0043b900
add esp, 4
jmp 0x427473
mov esi, dword [0x515e60]
push 7
call fcn.00409ee0
add esp, 4
cmp eax, 7
jne 0x429ae1
push 0
lea ecx, [eax - 6]
call fcn.0043b900
mov esi, dword [esp + 0x20]
add esp, 4
mov edi, eax
jmp 0x427475
cmp byte [edi + 0xf9], 0
je 0x429b0d
mov ecx, dword [0x5167b4]
test ecx, ecx
jle 0x429af7
dec ecx
jmp 0x429afc
mov ecx, 0x18f
mov dword [0x5167b4], ecx
mov dword [ecx*4 + 0x5167b8], 0
mov esi, dword [esp + 0x1c]
cmp eax, 1
sete dl
mov byte [edi + 0xf9], dl
mov edi, 1
jmp 0x42747d
push 0
mov ecx, 2
call fcn.0043b900
add esp, 4
jmp 0x427473
push 0
mov ecx, 3
call fcn.0043b900
add esp, 4
jmp 0x427473
mov ebx, dword [0x51161c]
add ebx, 0x4c
call fcn.0045c720
test eax, eax
je 0x429b6e
mov eax, dword [0x51161c]
mov ecx, dword [eax + 0x4c]
mov ebx, dword [ecx + 4]
jmp 0x429b70
xor ebx, ebx
mov al, byte [esi + 2]
test al, al
jne 0x429b97
fldz
sub esp, 8
fstp qword [esp]
push ebx
push 0
push 0x10000
push 0x4ebf44
call fcn.0049fc00
add esp, 4
push eax
jmp 0x429bde
cmp al, 1
jne 0x429bb4
fldz
mov edx, dword [0x515e60]
sub esp, 8
fstp qword [esp]
push ebx
push 0
push 0x10000
push edx
jmp 0x429bde
mov edi, 3
mov ecx, esi
call fcn.004225f0
mov eax, dword [0x515e64]
sub esp, 8
fstp qword [esp]
push ebx
push eax
xor edi, edi
mov ecx, esi
call fcn.00422540
mov ecx, dword [0x515e68]
push eax
push ecx
call fcn.004abe70
mov edi, eax
add esp, 0x18
test edi, edi
jne 0x429c0b
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x59e
jne 0x429c0b
mov edx, dword [0x515e60]
push edx
push edi
push 0x4e7114
jmp 0x428e14
xor eax, eax
test edi, edi
setne al
jmp 0x427473
mov ecx, dword [0x515e7c]
cmp word [ecx], 0
je 0x429c35
mov edi, 7
mov ecx, esi
call fcn.00422540
mov dword [esp + 0x2c], eax
jmp 0x429c3d
mov dword [esp + 0x2c], SysStringLen
mov edx, dword [0x515e78]
cmp word [edx], 0
je 0x429c5b
mov edi, 6
mov ecx, esi
call fcn.00422540
mov dword [esp + 0x34], eax
jmp 0x429c63
mov dword [esp + 0x34], SysStringLen
mov eax, dword [0x515e74]
cmp word [eax], 0
je 0x429c80
mov edi, 5
mov ecx, esi
call fcn.00422540
mov dword [esp + 0x30], eax
jmp 0x429c88
mov dword [esp + 0x30], SysStringLen
mov ecx, dword [0x515e70]
cmp word [ecx], 0
je 0x429ca6
mov edi, 4
mov ecx, esi
call fcn.00422540
mov dword [esp + 0x20], eax
jmp 0x429cae
mov dword [esp + 0x20], SysStringLen
mov edi, 9
mov ecx, esi
call fcn.004225f0
mov edx, dword [0x515e88]
mov eax, dword [0x515e80]
mov ax, word [eax]
sub esp, 8
fstp qword [esp]
push edx
call fcn.00409dc0
cmp ax, 0x4c
mov eax, dword [esp + 0x38]
sete cl
movzx edx, cl
mov ecx, dword [esp + 0x40]
push edx
mov edx, dword [esp + 0x40]
push eax
mov eax, dword [0x515e6c]
mov ax, word [eax]
push ecx
push edx
call fcn.00409dc0
mov edx, dword [0x515e68]
mov edi, dword [esp + 0x3c]
cmp ax, 0x48
mov eax, dword [0x515e64]
push edx
push eax
sete cl
push ebx
call fcn.0043bb50
add esp, 0x28
jmp 0x427473
mov ecx, dword [0x515e64]
cmp word [ecx], 0
je 0x429d3d
mov edi, 1
mov ecx, esi
call fcn.00422540
mov ebx, eax
jmp 0x429d3f
xor ebx, ebx
mov edx, dword [0x515e60]
cmp word [edx], 0
je 0x429d56
xor edi, edi
mov ecx, esi
call fcn.00422540
jmp 0x429d5b
mov eax, 0xc8
mov ecx, dword [0x515e6c]
mov edx, dword [0x515e68]
push ecx
push edx
push ebx
push eax
call fcn.00451f30
jmp 0x427473
mov eax, dword [0x515ee4]
test eax, eax
je 0x429d95
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x429d95
mov eax, dword [0x515ee4]
push eax
call dword [sym.imp.USER32.dll_DestroyWindow]
mov dword [0x515ee4], 0
mov edi, 1
jmp 0x42747d
mov ecx, dword [0x515e70]
mov edx, dword [0x515e6c]
mov eax, dword [0x515e68]
push 0
push ecx
mov ecx, dword [0x515e64]
push edx
mov edx, dword [0x515e60]
push eax
push ecx
push edx
push esi
mov ecx, 0x4e1a4c
call fcn.00431af0
jmp 0x427473
mov eax, dword [0x515e74]
mov ecx, dword [0x515e70]
mov edx, dword [0x515e6c]
push 1
push eax
mov eax, dword [0x515e68]
push ecx
mov ecx, dword [0x515e64]
push edx
push eax
push ecx
mov ecx, dword [0x515e60]
push esi
call fcn.00431af0
jmp 0x427473
mov edx, dword [0x515e68]
mov eax, dword [0x515e64]
mov ecx, dword [0x515e60]
push edx
push eax
push ecx
mov ecx, dword [0x515e6c]
push esi
call fcn.00432db0
jmp 0x427473
mov edx, dword [0x515e64]
mov eax, dword [0x515e60]
mov edi, dword [0x515e6c]
mov esi, dword [0x515e68]
push edx
push eax
call fcn.00433130
mov esi, dword [esp + 0x1c]
mov edi, eax
jmp 0x427475
mov ecx, esi
call fcn.00434ed0
jmp 0x427473
mov esi, dword [0x515e64]
call fcn.0041d000
mov esi, dword [0x515e60]
movzx ebx, ax
call fcn.0041d070
movzx ecx, ax
mov eax, dword [esp + 0x1c]
mov dl, 2
cmp dl, byte [eax + 2]
mov dword [esp + 0x2c], ecx
sbb esi, esi
and esi, dword [0x515e18]
je 0x429eee
movzx ecx, cx
cmp ecx, 0xffffffff
je 0x429eee
movzx eax, word [edi + 0xf0]
shr eax, cl
and eax, 3
jne 0x429ebb
push 0x4ebf80
jmp 0x429ed1
cmp eax, 1
jne 0x429ec7
push 0x4ebfa0
jmp 0x429ed1
cmp eax, 2
jne 0x429eee
push 0x4ebfc0
call fcn.0049fc00
add esp, 4
push 1
push 0
push 0xffffffffffffffff
push eax
push esi
call fcn.004aa2a0
test eax, eax
je case.0x4270dc.8
movzx ecx, word [esp + 0x2c]
cmp ecx, 0xffffffff
je 0x429f1c
cmp ebx, 0xffffffff
je 0x429f1c
mov eax, 3
shl ax, cl
shl bx, cl
not ax
and ax, word [edi + 0xf0]
or ax, bx
mov word [edi + 0xf0], ax
mov esi, dword [esp + 0x1c]
mov edi, 1
jmp 0x42747d
xor edi, edi
mov ecx, esi
call fcn.00422540
mov ecx, dword [esp + 0x20]
mov byte [ecx + 0xef], al
cmp al, 0x64
jbe 0x429f48
mov byte [ecx + 0xef], 2
mov edi, 1
jmp 0x42747d
mov ecx, dword [edi + 0xd4]
mov eax, dword [0x515e60]
push ecx
call fcn.0041cce0
mov dword [edi + 0xd4], eax
add esp, 4
mov edi, 1
jmp 0x42747d
xor edi, edi
mov ecx, esi
call fcn.00422540
cmp eax, 0x64
ja 0x429f8e
mov edx, dword [esp + 0x20]
mov byte [edx + 0xf6], al
mov edi, 1
jmp 0x42747d
push 0x4ebfe0
call fcn.0049fc00
add esp, 4
push eax
mov eax, dword [0x515e68]
push eax
call fcn.004c4e9d
add esp, 8
test eax, eax
jne 0x429ff6
mov ecx, dword [0x515e60]
cmp word [ecx], ax
je 0x429fd3
xor edi, edi
mov ecx, esi
call fcn.00422540
mov edx, dword [esp + 0x20]
mov dword [edx + 0x60], eax
mov eax, dword [0x515e64]
cmp word [eax], 0
je 0x42a031
mov edi, 1
mov ecx, esi
call fcn.00422540
mov ecx, dword [esp + 0x20]
mov dword [ecx + 0x68], eax
jmp 0x42747d
mov edx, dword [0x515e60]
cmp word [edx], 0
je 0x42a012
xor edi, edi
mov ecx, esi
call fcn.00422540
mov ecx, dword [esp + 0x20]
mov dword [ecx + 0x5c], eax
mov edx, dword [0x515e64]
cmp word [edx], 0
je 0x42a031
mov edi, 1
mov ecx, esi
call fcn.00422540
mov ecx, dword [esp + 0x20]
mov dword [ecx + 0x64], eax
mov edi, 1
jmp 0x42747d
push 0x4ebfe0
call fcn.0049fc00
mov edx, dword [0x515e64]
add esp, 4
push eax
push edx
call fcn.004c4e9d
add esp, 8
xor edi, edi
mov ecx, esi
test eax, eax
jne 0x42a076
call fcn.00422540
mov ecx, dword [esp + 0x20]
mov dword [ecx + 0x70], eax
mov edi, 1
jmp 0x42747d
call fcn.00422540
mov edx, dword [esp + 0x20]
mov dword [edx + 0x6c], eax
mov edi, 1
jmp 0x42747d
xor edi, edi
mov ecx, esi
call fcn.00422540
mov ecx, dword [esp + 0x20]
mov dword [ecx + 0x54], eax
mov edi, 1
jmp 0x42747d
xor edi, edi
mov ecx, esi
call fcn.00422540
mov edx, dword [esp + 0x20]
mov dword [edx + 0x58], eax
mov edi, 1
jmp 0x42747d
mov ecx, dword [0x515e60]
mov eax, 0x4ebffc
call fcn.004a75a0
mov ecx, esi
test eax, eax
je 0x42a0fb
mov dword [edi], 0xffffffff
mov dword [edi + 4], 0xffffffff
xor edi, edi
call fcn.00422540
mov ecx, dword [esp + 0x20]
mov dword [ecx + 0x24], eax
mov edi, 1
jmp 0x42747d
mov dword [edi + 0x24], 0xffffffff
xor edi, edi
call fcn.00422540
mov ecx, dword [esp + 0x20]
mov dword [ecx + 4], edx
mov edx, eax
or edx, dword [ecx + 4]
mov dword [ecx], eax
jne 0x42a122
mov dword [ecx], 0xa
mov dword [ecx + 4], edi
mov edi, 1
jmp 0x42747d
mov esi, dword [0x515e60]
push 7
call fcn.00409ee0
add esp, 4
cmp eax, 7
je 0x42a14d
cmp eax, 1
sete al
mov byte [edi + 0xf3], al
mov esi, dword [esp + 0x1c]
mov edi, 1
jmp 0x42747d
mov esi, dword [0x515e60]
call fcn.0041c7c0
dec eax
cmp eax, 5
ja case.default.0x42a170
jmp dword [eax*4 + 0x42b32c]
mov esi, dword [esp + 0x1c]
mov dword [edi + 0x20], 1
mov edi, 1
jmp 0x42747d
mov esi, dword [esp + 0x1c]
mov dword [edi + 0x20], 2
mov edi, 1
jmp 0x42747d
mov esi, dword [esp + 0x1c]
mov dword [edi + 0x20], 4
mov edi, 1
jmp 0x42747d
mov esi, dword [esp + 0x1c]
mov dword [edi + 0x20], 3
mov edi, 1
jmp 0x42747d
mov esi, dword [esp + 0x1c]
mov byte [edi + 0xe9], 1
mov edi, 1
jmp 0x42747d
mov esi, dword [esp + 0x1c]
mov byte [edi + 0xe9], 0
mov edi, 1
jmp 0x42747d
push 5
push 0x4ec004
call fcn.0049fc00
mov edx, dword [0x515e60]
add esp, 4
push eax
push edx
call fcn.004c56eb
add esp, 0xc
test eax, eax
jne 0x42a2e6
lea edi, [eax + 1]
mov ecx, esi
call fcn.004224c0
cmp eax, 0x1e
jae 0x42747d
mov ecx, esi
call fcn.00422540
mov edi, eax
mov eax, dword [0x515e64]
push 0x2e
push eax
mov ebx, edx
call fcn.004c5cc1
add esp, 8
mov dword [esp + 0x2c], eax
test eax, eax
je 0x42a262
mov esi, eax
add esi, 2
call fcn.0041bbf0
mov esi, dword [esp + 0x1c]
jmp 0x42a266
xor eax, eax
xor edx, edx
add edi, eax
adc ebx, edx
add edi, 2
adc ebx, 0
mov dword [esp + 0x44], ebx
js 0x42a28a
jg 0x42a280
cmp edi, 0xff
jbe 0x42a28a
mov edi, 1
jmp 0x42747d
mov eax, dword [0x515e64]
push 0
push 1
push 1
push 1
call fcn.004a7050
add esp, 0x10
mov ecx, 0x4ec020
test eax, eax
jne 0x42a2ad
mov ecx, 0x4e1a4c
cmp dword [esp + 0x2c], 0
mov eax, 0x4e1a4c
jne 0x42a2be
mov eax, 0x4ea29c
mov edx, dword [esp + 0x20]
push ecx
mov ecx, dword [0x515e64]
push eax
push ecx
add edx, 0x74
push 0x4ec024
push edx
call fcn.004c52a7
add esp, 0x14
mov edi, 1
jmp 0x42747d
push 7
push str.e_757
call fcn.0049fc00
add esp, 4
push eax
mov eax, dword [0x515e60]
push eax
call fcn.004c56eb
add esp, 0xc
test eax, eax
jne case.0x42a320.69
mov ecx, dword [0x515e64]
movzx eax, word [ecx]
add eax, 0xffffffbc
cmp eax, 0x24
ja case.0x42a320.69
movzx edx, byte [eax + 0x42b350]
jmp dword [edx*4 + 0x42b344]
mov byte [edi + 0xf5], 0x44
mov edi, 1
jmp 0x42747d
mov al, byte [ecx]
mov byte [edi + 0xf5], al
mov edi, 1
jmp 0x42747d
mov ecx, dword [0x515e68]
push ecx
mov ecx, dword [0x515e64]
call fcn.0043cb00
jmp 0x427473
movzx eax, byte [esi + 2]
mov dl, 4
cmp dl, al
sbb ecx, ecx
and ecx, dword [0x515e20]
mov dl, 3
push ecx
mov ecx, dword [0x515e74]
cmp dl, al
mov edx, dword [0x515e70]
sbb eax, eax
and eax, dword [0x515e1c]
push eax
mov eax, dword [0x515e6c]
push ecx
mov ecx, dword [0x515e68]
push edx
mov edx, dword [0x515e60]
push eax
push ecx
mov ecx, dword [0x515e64]
push edx
push 0x516ea8
call fcn.0046acd0
jmp 0x427473
mov eax, dword [0x515e6c]
mov ecx, dword [0x515e68]
mov edx, dword [0x515e64]
push eax
push ecx
mov ecx, dword [0x515e60]
push edx
push 0x516ea8
call fcn.0045c790
jmp 0x427473
mov edx, dword [0x515e68]
mov al, 2
cmp al, byte [esi + 2]
mov eax, dword [0x515e64]
sbb ecx, ecx
and ecx, dword [0x515e18]
push ecx
mov ecx, dword [0x515e60]
push edx
push eax
push ecx
push esi
call fcn.0045d100
jmp 0x427473
mov edx, dword [0x515e6c]
mov eax, dword [0x515e64]
push edx
push eax
mov eax, dword [0x515e68]
push esi
call fcn.0045e100
jmp 0x427473
mov eax, dword [0x515e60]
mov edi, eax
call fcn.00409fa0
test eax, eax
jne 0x42a453
push str.Permit
push edi
call fcn.004c4e9d
add esp, 8
neg eax
sbb eax, eax
and eax, 0xfffffffa
add eax, 6
jmp switch.0x0042a458
cmp eax, 7
ja case.0x42a458.3
jmp dword [eax*4 + 0x42b378]
cmp byte [0x516039], 0
jne case.0x42a458.3
call fcn.0042ebf0
mov edi, 1
jmp 0x42747d
cmp byte [0x516039], 0
je case.0x42a458.3
call fcn.0042ebf0
mov edi, 1
jmp 0x42747d
mov ecx, dword [0x515e60]
push ecx
push 0
push 0x4e7114
jmp 0x428e14
mov edi, 1
mov ecx, esi
call fcn.00422540
test eax, eax
setne dl
movzx eax, dl
push eax
mov eax, dword [0x515e60]
call fcn.00409fa0
push eax
push esi
call fcn.0042ec40
jmp 0x427473
mov esi, dword [0x515e60]
push 7
call fcn.00409ee0
add esp, 4
cmp eax, 7
je 0x42a4ee
cmp eax, 1
sete cl
mov byte [edi + 0xf4], cl
mov esi, dword [esp + 0x1c]
mov edi, 1
jmp 0x42747d
mov esi, dword [0x515e60]
call fcn.0041cb50
mov byte [edi + 0xf2], al
cmp al, 4
jne 0x42a518
mov byte [edi + 0xf2], 0
mov esi, dword [esp + 0x1c]
mov edi, 1
jmp 0x42747d
mov esi, dword [0x515e60]
push 7
call fcn.00409ee0
add esp, 4
cmp eax, 7
je 0x42a547
cmp eax, 1
sete dl
mov byte [edi + 0xea], dl
mov esi, dword [esp + 0x1c]
mov edi, 1
jmp 0x42747d
mov esi, dword [0x515e60]
push 7
call fcn.00409ee0
add esp, 4
cmp eax, 7
je 0x42a576
cmp eax, 1
sete al
mov byte [edi + 0xeb], al
mov esi, dword [esp + 0x1c]
mov edi, 1
jmp 0x42747d
mov eax, dword [0x515e60]
call fcn.0041cc10
lea ecx, [eax - 1]
cmp ecx, 0xc
ja case.0x42a59d.3
movzx ecx, byte [ecx + 0x42b3b0]
jmp dword [ecx*4 + 0x42b398]
mov bl, 1
call fcn.0042ed40
mov edi, 1
jmp 0x42747d
xor bl, bl
call fcn.0042ed40
mov edi, 1
jmp 0x42747d
mov dword [0x51162c], eax
mov edi, 1
jmp 0x42747d
or byte [0x5166ef], 2
cmp dword [0x516010], 0
mov byte [0x5166ee], 1
jne case.0x42a59d.3
mov edx, dword [0x51164c]
movzx eax, word [edx]
push eax
call fcn.004085a0
add esp, 4
mov edi, 1
jmp 0x42747d
mov byte [0x5166ee], 0
mov edi, 1
jmp 0x42747d
mov eax, dword [0x515e60]
mov edi, str._a_a_a_v
mov cl, 0x90
call fcn.00443af0
jmp 0x427473
mov eax, dword [0x515e60]
mov edi, 0x511624
mov cl, 0x14
call fcn.00443af0
jmp 0x427473
mov eax, dword [0x515e60]
mov edi, 0x511628
mov cl, 0x91
call fcn.00443af0
jmp 0x427473
push 0x516ea8
mov al, 1
call fcn.0041e560
mov edi, 1
jmp 0x42747d
xor edi, edi
mov ecx, esi
call fcn.00422540
jmp 0x428673
mov ecx, dword [0x515e64]
mov ebx, dword [0x515e6c]
mov edx, dword [0x515e68]
push ecx
mov ecx, dword [0x515e70]
call fcn.0049e090
jmp 0x427473
mov edx, dword [0x515e60]
mov ecx, dword [0x515e6c]
mov ebx, dword [0x515e68]
push edx
mov edx, dword [0x515e64]
push esi
call fcn.0049e2d0
jmp 0x427473
cmp byte [esi + 2], 3
mov ecx, dword [0x515e64]
mov edx, dword [0x515e60]
sbb eax, eax
not eax
and eax, dword [0x515e68]
push eax
push ecx
push esi
call fcn.0049e420
jmp 0x427473
cmp byte [esi + 2], 2
jae 0x42a712
mov edi, dword [edi + 0x14]
test edi, edi
je 0x42a712
mov ecx, dword [edi + 4]
lea edx, [edi + 8]
push edx
lea eax, [edi + 0x808]
push esi
call fcn.0049e4a0
jmp 0x427473
mov edx, dword [0x515e64]
lea eax, [esp + 0x3f]
push eax
lea ecx, [esp + 0x54]
push ecx
push 2
push edx
call fcn.0041c510
mov ecx, dword [esp + 0x60]
add esp, 0x10
mov ebx, eax
test ecx, ecx
jne 0x42a748
mov ecx, dword [0x515e68]
mov eax, dword [0x515e6c]
mov dword [esp + 0x50], ecx
jmp 0x42a74d
mov eax, dword [0x515e68]
push ecx
push esi
mov ecx, ebx
call fcn.0049e4a0
cmp byte [esp + 0x3f], 0
mov edi, eax
je 0x427475
test ebx, ebx
je 0x427475
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x427475
cmp byte [esi + 2], 2
jae 0x42a7a9
mov edi, dword [edi + 0x14]
test edi, edi
je 0x42a7a9
mov eax, dword [0x515e60]
push eax
mov eax, dword [edi + 4]
lea ecx, [edi + 0x808]
push ecx
mov ecx, dword [edi + 0x1008]
lea edx, [edi + 8]
push edx
push esi
call fcn.0049e850
jmp 0x427473
mov edx, dword [0x515e64]
lea eax, [esp + 0x3f]
push eax
lea ecx, [esp + 0x54]
push ecx
push 2
push edx
call fcn.0041c510
mov ebx, eax
mov eax, dword [esp + 0x60]
add esp, 0x10
test eax, eax
jne 0x42a7e5
mov eax, dword [0x515e68]
mov ecx, dword [0x515e6c]
mov edx, dword [0x515e70]
mov dword [esp + 0x50], eax
jmp 0x42a7f1
mov ecx, dword [0x515e68]
mov edx, dword [0x515e6c]
mov esi, dword [0x515e60]
push edx
push ecx
push eax
call fcn.0041c670
mov ecx, eax
mov eax, dword [esp + 0x28]
push eax
mov eax, ebx
call fcn.0049e850
cmp byte [esp + 0x3f], 0
mov edi, eax
je 0x42894a
test ebx, ebx
je 0x42894a
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov esi, dword [esp + 0x1c]
jmp 0x427475
cmp byte [esi + 2], 1
jae 0x42a8a6
mov eax, dword [edi + 0x14]
test eax, eax
je 0x42a8a6
cmp dword [eax + 0x1008], 0xfffffffe
lea ecx, [eax + 8]
jne 0x42a889
cmp word [ecx], 0
je 0x42a87f
add eax, 0x808
push eax
push ecx
push 0x4ec058
mov esi, 0x400
lea edi, [esp + 0x14c]
call fcn.004a71f0
mov esi, dword [esp + 0x28]
add esp, 0xc
mov ecx, edi
mov edi, dword [esp + 0x20]
xor eax, eax
jmp 0x42a88e
lea ecx, [eax + 0x808]
xor eax, eax
jmp 0x42a88e
add eax, 0x808
mov edx, dword [edi + 0x14]
mov ebx, dword [edx + 4]
push eax
push esi
mov edi, ecx
mov dword [esp + 0x58], ecx
call fcn.0049ec60
jmp 0x427473
mov edx, dword [0x515e60]
lea eax, [esp + 0x3f]
push eax
lea ecx, [esp + 0x54]
push ecx
push 2
push edx
call fcn.0041c510
add esp, 0x10
cmp dword [esp + 0x50], 0
mov ebx, eax
jne 0x42a8db
mov eax, dword [0x515e64]
mov edi, dword [0x515e68]
mov dword [esp + 0x50], eax
jmp 0x42a8e1
mov edi, dword [0x515e64]
cmp word [edi], 0
jne 0x42a8eb
xor edi, edi
jmp 0x42a90b
push str.3:9_r6743_
call fcn.0049fc00
add esp, 4
push eax
push edi
call fcn.004c4e9d
add esp, 8
test eax, eax
jne 0x42a90b
mov edi, 0x4e1a4c
push edi
mov edi, dword [esp + 0x54]
push esi
call fcn.0049ec60
cmp byte [esp + 0x3f], 0
mov edi, eax
je 0x427475
test ebx, ebx
je 0x427475
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x427475
mov esi, dword [0x515e60]
call fcn.0041c710
mov esi, eax
cmp esi, 0xffffffff
jne 0x42a95c
mov ecx, dword [0x515e60]
push ecx
push 0
push 0x4e7114
jmp 0x428936
call fcn.004a87e0
test eax, eax
je 0x42a96b
mov dword [edi + 0xd0], esi
mov esi, dword [esp + 0x1c]
mov edi, 1
jmp 0x42747d
mov edx, dword [0x515e60]
push edx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov edi, 1
jmp 0x42747d
xor edi, edi
mov ecx, esi
call fcn.00422540
push eax
call fcn.00454e50
xor ecx, ecx
add esp, 4
test al, al
setne cl
mov edi, ecx
jmp 0x427475
mov eax, dword [0x515e60]
call fcn.0041d230
cmp eax, 0xffffffff
jne 0x42a9d2
mov edx, dword [0x515e60]
push edx
push 0
push 0x4e7114
jmp 0x428e14
mov dword [edi + 0xfc], eax
mov edi, 1
jmp 0x42747d
xor edi, edi
mov eax, edi
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [esp + 0x48]
mov dword [edx], eax
mov eax, edi
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [eax + 8]
mov ecx, dword [esp + 0x48]
mov dword [ecx], eax
jmp case.0x4262de.227
cmp ebx, edx
je 0x42aa84
cmp dword [ebx + 8], edx
jne 0x42aa84
mov ecx, dword [0x515e10]
test ecx, ecx
je 0x42aa79
cmp byte [ecx + 0x17], dl
jne 0x42aa47
mov eax, dword [ecx + 0xc]
jmp 0x42aa49
mov eax, ecx
test byte [eax + 0x15], 2
je 0x42aa79
mov eax, ebx
call fcn.0041bf70
mov eax, dword [ebp + 8]
dec eax
neg eax
sbb eax, eax
and eax, 6
inc eax
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov dword [ebx + 8], edx
mov edx, dword [0x515e60]
mov dword [ebx], edx
mov eax, dword [ebp + 8]
dec eax
neg eax
sbb eax, eax
and eax, 6
inc eax
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, dword [esi + 0x1c]
cmp esi, edx
je 0x42aab9
mov eax, dword [esp + 0x48]
mov dword [eax], esi
jmp case.0x4262de.227
mov eax, 5
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, dword [esi + 0x1c]
cmp esi, edx
je 0x42aae2
mov ecx, dword [esp + 0x48]
mov dword [ecx], esi
mov eax, 6
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [0x515e64]
push edx
push 0
push 0x4e7150
call fcn.0049fc00
mov ecx, dword [esp + 0x28]
add esp, 4
push eax
call fcn.0042f1b0
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [0x515e68]
push eax
push 0
push 0x4e718c
call fcn.0049fc00
add esp, 4
push eax
mov ecx, esi
call fcn.0042f1b0
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [esp + 0x48]
mov dword [ecx], eax
jmp 0x42aa03
cmp dword [esp + 0x2c], 0
je 0x42ab88
lea esi, [esp + 0x2c]
call fcn.0042f890
mov eax, dword [esp + 0x30]
test eax, eax
je 0x426278
cmp eax, 8
je 0x426278
push 0x4e1a4c
push 0
push 0x4eb630
call fcn.0049fc00
mov ecx, dword [0x5174dc]
add esp, 4
push eax
call fcn.0042f1b0
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esp + 0x48]
mov dword [eax], edx
jmp case.0x4262de.227
mov ecx, dword [esp + 0x48]
mov dword [ecx], edx
mov eax, edi
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp byte [esi + 2], dl
jne 0x42ac32
push 0x4e1a4c
push 0
push 0x4ebce8
call fcn.0049fc00
add esp, 4
push eax
mov ecx, esi
call fcn.0042ef30
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0x10
call fcn.004c62f8
mov edi, eax
add esp, 4
test edi, edi
jne 0x42ac6b
push 0x4e1a4c
push eax
push str.Out_of_memory.
mov ecx, esi
call fcn.0042f1b0
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [0x516e00]
mov edx, dword [0x516dfc]
lea ecx, [esp + 0x30]
push ecx
mov dword [esp + 0x30], eax
xor eax, eax
push edi
push eax
push esi
lea ebx, [esp + 0x3c]
mov dword [esp + 0x40], edx
mov dword [0x516dfc], eax
mov dword [0x516e00], eax
call fcn.0045ac50
mov ebx, eax
cmp ebx, 1
jne 0x42accb
cmp dword [edi + 8], 0
jne 0x42accb
mov edx, dword [esp + 0x30]
cmp dword [edi], edx
jne 0x42accb
cmp dword [esp + 0x2c], 0x400000
mov eax, edx
mov dword [edi + 0xc], eax
jbe 0x42ad38
dec dword [0x516e04]
jmp 0x42ad38
cmp dword [esp + 0x30], 0
je 0x42ad0a
mov eax, dword [0x516dfc]
test eax, eax
je 0x42acf6
push eax
call fcn.004c57e5
add esp, 4
cmp dword [0x516e00], 0x400000
jbe 0x42acf6
dec dword [0x516e04]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
mov dword [0x516dfc], ecx
mov dword [0x516e00], edx
cmp ebx, 1
je 0x42ad31
push edi
call fcn.004c57da
add esp, 4
mov eax, ebx
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov dword [edi + 0xc], 0
mov eax, dword [esp + 0x4c]
test byte [eax + 0x100], 2
mov dword [eax + 0x104], edi
jne 0x42ad54
push esi
call fcn.0042f540
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [0x51164c]
cmp word [eax], dx
jne 0x42ad97
cmp dword [0x516750], edx
jne 0x42ad97
cmp dword [0x51600c], edx
jne 0x42ad97
cmp dword [0x516010], edx
jne 0x42ad97
cmp byte [0x516019], dl
je case.0x4262de.222
mov eax, 8
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
xor edi, edi
mov ecx, esi
call fcn.00422540
push eax
push 7
push 0x516ea8
call fcn.0041e5a0
mov ecx, dword [esp + 0x974]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [ebp + 8], 2
je case.0x4262de.227
push 0x4e1a4c
push 0
push 0x4ebd30
jmp 0x42ab42