Function at 0x40e71d
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Link many functions at runtime

Disassembly:
push 0x270
mov eax, 0x42ec20
call fcn.00419996
xor eax, eax
mov dword [ebp - 4], eax
push 2
pop ecx
mov byte [ebp - 4], cl
lea edi, [ebp - 0x258]
mov esi, 0x438ecc
mov ecx, eax
push 0x37
pop ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
xor edx, edx
mov eax, ecx
div ebx
add dl, 0x31
xor byte [ebp + ecx - 0x258], dl
inc ecx
cmp ecx, 0xb
jl 0x40e74c
lea eax, [ebp - 0x258]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov ebx, eax
mov dword [ebp - 0x20c], ebx
test ebx, ebx
je 0x40ea18
mov esi, str.fargAWELLJ_
lea edi, [ebp - 0x264]
push 0x37
xor ecx, ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x31
xor byte [ebp + ecx - 0x264], dl
inc ecx
cmp ecx, 0xb
jl 0x40e794
lea eax, [ebp - 0x264]
push eax
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
call ebx
mov esi, str.farwYSVVLJ_
mov dword [ebp - 0x214], eax
lea edi, [ebp - 0x270]
xor ecx, ecx
push 0x37
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x31
xor byte [ebp + ecx - 0x270], dl
inc ecx
cmp ecx, 0xb
jl 0x40e7d5
lea eax, [ebp - 0x270]
push eax
push dword [ebp - 0x20c]
call ebx
mov esi, str.B_P_PB7
mov dword [ebp - 0x210], eax
lea edi, [ebp - 0x238]
xor ecx, ecx
push 0x37
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
xor edx, edx
mov eax, ecx
div edi
add dl, 0x31
xor byte [ebp + ecx - 0x238], dl
inc ecx
cmp ecx, 7
jl 0x40e814
mov esi, dword [ebp - 0x20c]
lea eax, [ebp - 0x238]
push eax
push esi
call ebx
cmp byte [0x438f3f], 0
mov ecx, dword [str.R__ZPUC8dze_s7]
mov edx, dword [0x438f3c]
mov dword [ebp - 0x23c], eax
mov dword [ebp - 0x230], ecx
mov dword [ebp - 0x22c], edx
je 0x40e879
xor ecx, ecx
xor edx, edx
mov eax, ecx
div edi
add dl, 0x31
xor byte [ebp + ecx - 0x230], dl
inc ecx
cmp ecx, 8
jl 0x40e863
lea eax, [ebp - 0x230]
push eax
push esi
call ebx
cmp byte [0x438f35], 0
lea edi, [ebp - 0x1e8]
mov esi, 0x438f28
mov dword [ebp - 0x240], eax
push 0x37
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
je 0x40e8bd
xor ecx, ecx
xor edx, edx
mov eax, ecx
div edi
add dl, 0x31
xor byte [ebp + ecx - 0x1e8], dl
inc ecx
cmp ecx, 0xe
jl 0x40e8a7
mov esi, dword [ebp - 0x20c]
lea eax, [ebp - 0x1e8]
push eax
push esi
call ebx
mov ecx, dword [str.BW_P5]
mov dword [ebp - 0x220], ecx
mov cl, byte [0x438edc]
mov byte [ebp - 0x21c], cl
xor ecx, ecx
mov dword [ebp - 0x1d8], eax
xor edx, edx
mov eax, ecx
div edi
add dl, 0x31
xor byte [ebp + ecx - 0x220], dl
inc ecx
cmp ecx, 5
jl 0x40e8ed
lea eax, [ebp - 0x220]
push eax
push esi
call ebx
mov esi, str.BZF_QY_V9
mov dword [ebp - 0x224], eax
lea edi, [ebp - 0x24c]
xor ecx, ecx
push 0x37
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x31
xor byte [ebp + ecx - 0x24c], dl
inc ecx
cmp ecx, 9
jl 0x40e926
lea eax, [ebp - 0x24c]
push eax
push dword [ebp - 0x20c]
call ebx
cmp byte [0x438f27], 0
lea edi, [ebp - 0x27c]
mov esi, str.RGPEX_R_O_VWGZECZ_TZQX_
mov dword [ebp - 0x228], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
je 0x40e983
push 0x37
xor ecx, ecx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x31
xor byte [ebp + ecx - 0x27c], dl
inc ecx
cmp ecx, 0xc
jl 0x40e96d
lea eax, [ebp - 0x27c]
push eax
push dword [ebp - 0x20c]
call ebx
mov ecx, eax
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x218], ecx
test eax, eax
je 0x40ea0c
cmp dword [ebp - 0x210], 0
je 0x40ea0c
mov esi, dword [ebp - 0x23c]
test esi, esi
je 0x40ea0c
mov ebx, dword [ebp - 0x240]
test ebx, ebx
je 0x40ea0c
mov edi, dword [ebp - 0x1d8]
test edi, edi
je 0x40ea0c
cmp dword [ebp - 0x224], 0
je 0x40ea0c
cmp dword [ebp - 0x228], 0
je 0x40ea0c
test ecx, ecx
je 0x40ea0c
lea ecx, [ebp - 0x1d4]
push ecx
push 0x202
call eax
test eax, eax
jne 0x40ea0c
push 6
push 1
push 2
call esi
mov dword [ebp - 0x214], eax
cmp eax, 0xffffffff
jne 0x40ea30
call dword [ebp - 0x210]
push dword [ebp - 0x20c]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [ebp + 8]
call fcn.004025be
lea ecx, [ebp + 0x14]
call fcn.004025e6
xor al, al
call fcn.004198e8
ret
cmp dword [0x440dbc], 0xf
mov eax, 0x440da8
cmova eax, dword [0x440da8]
sub esp, 0x18
mov ecx, esp
push eax
call fcn.00404293
push 0x7d
pop edx
lea ecx, [ebp - 0x208]
call fcn.004075bc
add esp, 0x18
mov byte [ebp - 4], 3
cmp dword [eax + 0x14], 0xf
jbe 0x40ea6b
mov eax, dword [eax]
push eax
call edi
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 2
mov esi, eax
call fcn.004025e6
test esi, esi
jne 0x40ea95
mov esi, dword [ebp - 0x214]
push esi
call dword [ebp - 0x218]
jmp 0x40ea06
push 2
pop eax
mov word [ebp - 0x40], ax
mov eax, 0x2d9
mov word [ebp - 0x3e], ax
mov eax, dword [esi + 0xc]
mov esi, dword [ebp - 0x214]
push 0x10
mov eax, dword [eax]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x40]
push eax
push esi
call ebx
cmp eax, 0xffffffff
je 0x40ea89
xor eax, eax
lea edi, [ebp - 0x30]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
and dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
sub esp, 0x18
mov byte [ebp - 4], 4
mov ecx, esp
call fcn.0040dcb9
mov edx, 0x381b0540
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
mov edi, 0x4384bc
mov byte [ebp - 4], 5
push edi
mov ecx, eax
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
push edi
lea edx, [ebp + 0x14]
lea ecx, [ebp - 0x208]
call fcn.004044fb
pop ecx
push eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 7
call fcn.0040441b
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x440d90
call fcn.004042cc
push 0x7d
pop edx
mov ecx, esi
call fcn.004075bc
add esp, 0x18
lea ecx, [ebp - 0x208]
push 0xa
pop ebx
mov edx, ebx
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
sub esp, 0x18
mov ecx, esp
push 0x440e68
call fcn.004042cc
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], bl
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [ebp + 0xc]
sub esp, 0x18
sub edx, dword [ebp + 8]
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0xc
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x4407c8]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0xe
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0xf
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x4407d4]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x10
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x11
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
sub esp, 0x18
xor edx, edx
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x12
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x13
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x440824]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x14
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x15
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x4407f0]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x16
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x4407e0]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x18
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x44080c]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x1a
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x1b
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x440800]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x1c
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x1d
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x440800]
sub esp, 0x18
add edx, dword [0x44080c]
mov ecx, esp
add edx, dword [0x4407f0]
add edx, dword [0x440824]
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x1e
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x1f
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x4407f8]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x20
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x21
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x44082c]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x22
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x23
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x440828]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x24
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x25
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x4407f4]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x26
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x27
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x4407e8]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x28
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x29
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x440820]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x2a
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x2b
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x4407d8]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x2c
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x2d
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x440810]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x2e
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x2f
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x4407ec]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x30
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x31
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x440804]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x32
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x33
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x440834]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x34
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x35
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x440830]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x36
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
push 0x37
pop eax
mov byte [ebp - 4], al
lea ecx, [ebp - 0x30]
lea eax, [ebp - 0x1f0]
push eax
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x440814]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x38
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x39
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x440838]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x3a
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x3b
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x440808]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x3c
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x3d
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x44081c]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x3e
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x3f
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x4407fc]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x40
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x41
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x4407dc]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x42
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x43
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x4407e4]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x44
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x45
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
sub esp, 0x18
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x440e08
call fcn.004042cc
push 0x7d
pop edx
mov ecx, esi
call fcn.004075bc
add esp, 0x18
lea ecx, [ebp - 0x208]
mov edx, ebx
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x46
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x47
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
sub esp, 0x18
lea edx, [ebp + 8]
mov ecx, esp
call fcn.00406d7e
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x48
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x49
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
sub esp, 0x18
mov ecx, esp
push 0x440e50
call fcn.004042cc
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x4a
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x4b
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
sub esp, 0x18
mov ecx, esp
push 0x440e20
call fcn.004042cc
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x4c
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x4d
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
mov edx, dword [0x440818]
sub esp, 0x18
mov ecx, esp
call fcn.00402778
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x4e
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x4f
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
sub esp, 0x18
mov ecx, esp
push 0x440e80
call fcn.004042cc
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x50
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x51
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
sub esp, 0x18
mov ecx, esp
push 0x43f960
call fcn.004042cc
mov edx, ebx
lea ecx, [ebp - 0x208]
call fcn.004074ed
add esp, 0x18
push edi
mov ecx, eax
mov byte [ebp - 4], 0x52
call fcn.00404840
push eax
lea ecx, [ebp - 0x1f0]
call fcn.0040425a
lea eax, [ebp - 0x1f0]
mov byte [ebp - 4], 0x53
push eax
lea ecx, [ebp - 0x30]
call fcn.0040441b
lea ecx, [ebp - 0x1f0]
call fcn.004025e6
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 4
call fcn.004025e6
cmp dword [ebp - 0x1c], 0xf
lea eax, [ebp - 0x30]
mov ebx, dword [ebp - 0x214]
cmova eax, dword [ebp - 0x30]
push 0
push dword [ebp - 0x20]
push eax
push ebx
call dword [ebp - 0x224]
push 2
pop eax
push eax
push ebx
call dword [ebp - 0x228]
push ebx
call dword [ebp - 0x218]
call dword [ebp - 0x210]
push dword [ebp - 0x20c]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
call fcn.0040dff5
mov eax, dword [ebp - 0x1c]
cmp eax, 0xf
jbe 0x40faf7
inc eax
push eax
push dword [ebp - 0x30]
call fcn.00402682
pop ecx
pop ecx
lea ecx, [ebp + 8]
call fcn.004025be
lea ecx, [ebp + 0x14]
call fcn.004025e6
mov al, 1
jmp 0x40ea2a