Function at 0x40188b
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4245cf
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x46c
push ebx
push esi
push edi
push 0x428330
lea ecx, [ebp - 0x18]
mov dword [ebp - 4], 3
call fcn.00414520
push 0x428331
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 4
call fcn.00414520
mov eax, dword [ebp + 0x98]
sub eax, 0
mov byte [ebp - 4], 5
je 0x4012dd
dec eax
je 0x4012a0
dec eax
jne 0x401321
lea eax, [ebp - 0x30]
push 0x28
push eax
call fcn.00415d70
add esp, 8
push eax
lea ecx, [ebp - 0x68]
push ecx
mov bl, 0xa
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], bl
call fcn.00414650
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0xb
call fcn.00414600
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], bl
call fcn.004145a0
lea ecx, [ebp - 0x30]
jmp 0x401318
lea edx, [ebp - 0x24]
push 0x1a
push edx
call fcn.00415d70
add esp, 8
push eax
lea eax, [ebp - 0x3c]
mov bl, 8
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], bl
call fcn.00414650
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 9
call fcn.00414600
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], bl
call fcn.004145a0
lea ecx, [ebp - 0x24]
jmp 0x401318
lea ecx, [ebp - 0x48]
push 0x1c
push ecx
call fcn.00415d70
add esp, 8
push eax
lea edx, [ebp - 0x54]
mov bl, 6
push edx
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], bl
call fcn.00414650
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 7
call fcn.00414600
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], bl
call fcn.004145a0
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 5
call fcn.004145a0
cmp dword [ebp + 0x2c], 0
je 0x4013af
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x24]
push ecx
lea ecx, [ebp - 0x74]
call fcn.00414650
push 0x428334
lea edx, [ebp - 0x3c]
push edx
mov ecx, eax
mov byte [ebp - 4], 0xc
call fcn.004146e0
lea ecx, [ebp + 8]
push ecx
lea edx, [ebp - 0x30]
push edx
mov ecx, eax
mov byte [ebp - 4], 0xd
call fcn.00414650
push str..
lea ecx, [ebp - 0x68]
push ecx
mov bl, 0xe
mov ecx, eax
mov byte [ebp - 4], bl
call fcn.004146e0
push eax
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0xf
call fcn.00414600
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], bl
call fcn.004145a0
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0xd
call fcn.004145a0
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0xc
call fcn.004145a0
lea ecx, [ebp - 0x24]
jmp 0x40144d
lea edx, [ebp - 0x18]
push edx
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x74]
call fcn.00414650
push str.._
lea ecx, [ebp - 0x24]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0x10
call fcn.004146e0
lea edx, [ebp + 8]
push edx
lea ecx, [ebp - 0x3c]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0x11
call fcn.00414650
push 0x428344
lea edx, [ebp - 0x30]
push edx
mov ecx, eax
mov byte [ebp - 4], 0x12
call fcn.004146e0
lea ecx, [ebp + 0x20]
push ecx
lea edx, [ebp - 0x68]
mov bl, 0x13
push edx
mov ecx, eax
mov byte [ebp - 4], bl
call fcn.00414650
push eax
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x14
call fcn.00414600
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], bl
call fcn.004145a0
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x12
call fcn.004145a0
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x11
call fcn.004145a0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x10
call fcn.004145a0
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 5
call fcn.004145a0
lea eax, [ebp - 0x338]
push eax
lea ecx, [ebp - 0x74]
call fcn.004147c0
push eax
call dword [0x6481b8]
mov esi, eax
mov dword [ebp - 0x84], esi
cmp esi, 0xffffffff
jne 0x4014d9
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 4
call fcn.004145a0
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 3
call fcn.004145a0
lea ecx, [ebp + 8]
mov byte [ebp - 4], 2
call fcn.004145a0
lea ecx, [ebp + 0x14]
mov byte [ebp - 4], 1
call fcn.004145a0
lea ecx, [ebp + 0x20]
mov byte [ebp - 4], 0
call fcn.004145a0
lea ecx, [ebp + 0x5c]
mov dword [ebp - 4], 0x17
call fcn.004145a0
lea ecx, [ebp + 0x48]
mov byte [ebp - 4], 0x16
call fcn.004145a0
mov byte [ebp - 4], 0x15
jmp 0x401cea
mov bl, 0x2b
jmp 0x4014e0
push 0x428348
lea ecx, [ebp - 0x30c]
push ecx
call dword [0x64813c]
test eax, eax
je 0x401c62
push 0x42834c
lea edx, [ebp - 0x30c]
push edx
call dword [0x64813c]
test eax, eax
je 0x401c62
push 0x428332
lea ecx, [ebp - 0x48]
call fcn.00414520
cmp dword [ebp + 0x2c], 0
mov byte [ebp - 4], 0x18
je 0x401927
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x174]
push ecx
lea ecx, [ebp - 0x48]
call fcn.00414650
push 0x428350
lea edx, [ebp - 0xcc]
push edx
mov ecx, eax
mov byte [ebp - 4], 0x19
call fcn.004146e0
lea ecx, [ebp + 8]
push ecx
lea edx, [ebp - 0x1bc]
push edx
mov ecx, eax
mov byte [ebp - 4], 0x1a
call fcn.00414650
push 0x428354
lea ecx, [ebp - 0xb4]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0x1b
call fcn.004146e0
lea edx, [ebp - 0x30c]
push edx
lea ecx, [ebp - 0x15c]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0x1c
call fcn.004146e0
push 0x428358
lea edx, [ebp - 0x18c]
push edx
mov ecx, eax
mov byte [ebp - 4], 0x1d
call fcn.004146e0
lea ecx, [ebp + 0x20]
push ecx
lea edx, [ebp - 0x68]
push edx
mov ecx, eax
mov byte [ebp - 4], 0x1e
call fcn.00414650
lea ecx, [ebp - 0x18c]
mov byte [ebp - 4], 0x20
call fcn.004145a0
lea ecx, [ebp - 0x15c]
mov byte [ebp - 4], 0x21
call fcn.004145a0
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x22
call fcn.004145a0
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 4], 0x23
call fcn.004145a0
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 0x24
call fcn.004145a0
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x25
call fcn.004145a0
lea eax, [ebp - 0x338]
push eax
lea ecx, [ebp - 0x68]
call fcn.004147c0
push eax
call dword [0x6481b8]
mov edi, eax
cmp edi, 0xffffffff
je 0x401d12
push 0x42835c
lea ecx, [ebp - 0x1ec]
push ecx
lea ecx, [ebp - 0x68]
call fcn.004146e0
lea edx, [ebp - 0x44c]
push edx
lea ecx, [ebp - 0xe4]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0x29
call fcn.004146e0
push eax
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x2a
call fcn.00414600
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x29
call fcn.004145a0
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 4], 0x25
call fcn.004145a0
sub esp, 0xc
lea edx, [ebp - 0x48]
mov ecx, esp
mov dword [ebp - 0x5c], esp
push edx
call fcn.00414560
call fcn.00415d10
add esp, 0xc
test eax, eax
je 0x401902
push 0x428333
lea ecx, [ebp - 0x24]
call fcn.00414520
mov eax, dword [0x6370cc]
push eax
lea ecx, [ebp - 0x1d4]
push ecx
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], bl
call fcn.004146e0
push 0x428360
lea edx, [ebp - 0x114]
push edx
mov ecx, eax
mov byte [ebp - 4], 0x2c
call fcn.004146e0
lea ecx, [ebp + 0x14]
push ecx
lea edx, [ebp - 0x90]
push edx
mov ecx, eax
mov byte [ebp - 4], 0x2d
call fcn.00414650
push 0x428364
lea ecx, [ebp - 0xfc]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0x2e
call fcn.004146e0
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x2f
call fcn.00414600
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 0x2e
call fcn.004145a0
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x2d
call fcn.004145a0
lea ecx, [ebp - 0x114]
mov byte [ebp - 4], 0x2c
call fcn.004145a0
lea ecx, [ebp - 0x1d4]
mov byte [ebp - 4], bl
call fcn.004145a0
lea edx, [ebp - 0x44c]
push edx
lea eax, [ebp - 0x12c]
push eax
lea ecx, [ebp - 0x24]
call fcn.004146e0
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x30
call fcn.00414600
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], bl
call fcn.004145a0
push 0x428336
lea ecx, [ebp - 0x54]
call fcn.00414520
lea ecx, [ebp - 0x1f8]
push 0x1a
push ecx
mov byte [ebp - 4], 0x31
call fcn.00415b50
add esp, 8
mov esi, eax
mov edx, dword [0x63735c]
push edx
lea eax, [ebp - 0x144]
mov byte [ebp - 4], 0x32
push eax
lea ecx, [ebp - 0x54]
call fcn.004146e0
push esi
lea ecx, [ebp - 0x1a4]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0x33
call fcn.00414650
push eax
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x34
call fcn.00414600
lea ecx, [ebp - 0x1a4]
mov byte [ebp - 4], 0x33
call fcn.004145a0
lea ecx, [ebp - 0x144]
mov byte [ebp - 4], 0x32
call fcn.004145a0
lea ecx, [ebp - 0x1f8]
mov byte [ebp - 4], 0x31
call fcn.004145a0
push 1
lea ecx, [ebp - 0x54]
call fcn.004147c0
push eax
lea ecx, [ebp - 0x48]
call fcn.004147c0
push eax
call dword [0x647fd0]
lea edx, [ebp - 0x80]
push edx
lea eax, [ebp + 0x98]
push eax
sub esp, 0xc
lea edx, [ebp - 0x54]
mov ecx, esp
mov dword [ebp - 0x5c], esp
push edx
call fcn.00414560
call fcn.0040b4d0
add esp, 0x14
test eax, eax
je 0x4018be
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp + 0x98]
push eax
push ecx
sub esp, 0xc
lea edx, [ebp - 0x24]
mov ecx, esp
mov dword [ebp - 0x5c], esp
push edx
call fcn.00414560
sub esp, 0x68
lea eax, [ebp + 0x30]
mov ecx, esp
mov dword [ebp - 0x58], esp
push eax
mov byte [ebp - 4], 0x35
call fcn.00401130
lea ecx, [ebp - 0x9c]
push ecx
mov byte [ebp - 4], 0x31
call fcn.00419cd0
add esp, 0x80
lea ecx, [ebp - 0x9c]
call fcn.004145a0
lea ecx, [ebp - 0x54]
call fcn.004147c0
push eax
call dword [0x64802c]
lea ecx, [ebp - 0x54]
call fcn.00414770
lea ecx, [ebp - 0x24]
call fcn.00414770
push 4
lea edx, [ebp + 0x98]
push edx
call fcn.00415a80
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], bl
call fcn.004145a0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x25
call fcn.004145a0
lea eax, [ebp - 0x478]
push eax
push edi
call dword [0x648040]
test eax, eax
jne 0x401644
push edi
call dword [0x647fb8]
lea ecx, [ebp - 0x68]
jmp 0x401c47
lea ecx, [ebp - 0x18]
push ecx
lea edx, [ebp - 0x108]
push edx
lea ecx, [ebp - 0x48]
call fcn.00414650
push 0x428368
lea ecx, [ebp - 0xf0]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0x36
call fcn.004146e0
lea edx, [ebp + 8]
push edx
lea ecx, [ebp - 0xd8]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0x37
call fcn.00414650
push 0x42836c
lea edx, [ebp - 0xc0]
push edx
mov ecx, eax
mov byte [ebp - 4], 0x38
call fcn.004146e0
lea ecx, [ebp - 0x30c]
push ecx
lea edx, [ebp - 0xa8]
push edx
mov ecx, eax
mov byte [ebp - 4], 0x39
call fcn.004146e0
push eax
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x3a
call fcn.00414600
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x39
call fcn.004145a0
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x38
call fcn.004145a0
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x37
call fcn.004145a0
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x36
call fcn.004145a0
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x18
call fcn.004145a0
sub esp, 0xc
lea eax, [ebp - 0x48]
mov ecx, esp
mov dword [ebp - 0x58], esp
push eax
call fcn.00414560
call fcn.00415d10
add esp, 0xc
test eax, eax
je 0x401c50
push 0x428337
lea ecx, [ebp - 0x30]
call fcn.00414520
mov ecx, dword [0x6370cc]
push ecx
lea edx, [ebp - 0x168]
push edx
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x3b
call fcn.004146e0
push 0x428370
lea ecx, [ebp - 0x150]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0x3c
call fcn.004146e0
lea edx, [ebp + 0x14]
push edx
lea ecx, [ebp - 0x138]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0x3d
call fcn.00414650
push 0x428374
lea edx, [ebp - 0x120]
push edx
mov ecx, eax
mov byte [ebp - 4], 0x3e
call fcn.004146e0
push eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x3f
call fcn.00414600
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x3e
call fcn.004145a0
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0x3d
call fcn.004145a0
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x3c
call fcn.004145a0
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x3b
call fcn.004145a0
lea eax, [ebp - 0x30c]
push eax
lea ecx, [ebp - 0x180]
push ecx
lea ecx, [ebp - 0x30]
call fcn.004146e0
push eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x41
call fcn.00414600
lea ecx, [ebp - 0x180]
mov byte [ebp - 4], 0x3b
call fcn.004145a0
push 0x42833d
lea ecx, [ebp - 0x3c]
call fcn.00414520
lea edx, [ebp - 0x1c8]
push 0x1a
push edx
mov byte [ebp - 4], 0x42
call fcn.00415b50
add esp, 8
mov esi, eax
mov eax, dword [0x63735c]
push eax
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 4], 0x43
push ecx
lea ecx, [ebp - 0x3c]
call fcn.004146e0
push esi
lea edx, [ebp - 0x198]
push edx
mov ecx, eax
mov byte [ebp - 4], 0x44
call fcn.00414650
push eax
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x45
call fcn.00414600
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x44
call fcn.004145a0
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 4], 0x43
call fcn.004145a0
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x42
call fcn.004145a0
push 1
lea ecx, [ebp - 0x3c]
call fcn.004147c0
push eax
lea ecx, [ebp - 0x48]
call fcn.004147c0
push eax
call dword [0x647fd0]
lea eax, [ebp - 0x7c]
push eax
lea ecx, [ebp - 0x78]
push ecx
sub esp, 0xc
lea edx, [ebp - 0x3c]
mov ecx, esp
mov dword [ebp - 0x58], esp
push edx
call fcn.00414560
call fcn.0040b4d0
add esp, 0x14
test eax, eax
je 0x401c0e
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x78]
push eax
push ecx
sub esp, 0xc
lea edx, [ebp - 0x30]
mov ecx, esp
mov dword [ebp - 0x58], esp
push edx
call fcn.00414560
sub esp, 0x68
lea eax, [ebp + 0x30]
mov ecx, esp
mov dword [ebp - 0x5c], esp
push eax
mov byte [ebp - 4], 0x46
call fcn.00401130
lea ecx, [ebp - 0x1e0]
push ecx
mov byte [ebp - 4], 0x42
call fcn.00419cd0
add esp, 0x80
lea ecx, [ebp - 0x1e0]
call fcn.004145a0
lea ecx, [ebp - 0x3c]
call fcn.004147c0
push eax
call dword [0x64802c]
lea ecx, [ebp - 0x3c]
call fcn.00414770
lea ecx, [ebp - 0x30]
call fcn.00414770
push 4
lea edx, [ebp - 0x78]
push edx
call fcn.00415a80
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x3b
call fcn.004145a0
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x18
call fcn.004145a0
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 5
call fcn.004145a0
mov esi, dword [ebp - 0x84]
lea eax, [ebp - 0x338]
push eax
push esi
call dword [0x648040]
test eax, eax
jne 0x4014e0
push esi
call dword [0x647fb8]
lea ecx, [ebp - 0x18]
call fcn.00414770
lea ecx, [ebp - 0x74]
call fcn.00414770
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 4
call fcn.004145a0
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 3
call fcn.004145a0
lea ecx, [ebp + 8]
mov byte [ebp - 4], 2
call fcn.004145a0
lea ecx, [ebp + 0x14]
mov byte [ebp - 4], 1
call fcn.004145a0
lea ecx, [ebp + 0x20]
mov byte [ebp - 4], 0
call fcn.004145a0
lea ecx, [ebp + 0x5c]
mov dword [ebp - 4], 0x49
call fcn.004145a0
lea ecx, [ebp + 0x48]
mov byte [ebp - 4], 0x48
call fcn.004145a0
mov byte [ebp - 4], 0x47
lea ecx, [ebp + 0x3c]
call fcn.004145a0
lea ecx, [ebp + 0x30]
mov dword [ebp - 4], 0xffffffff
call fcn.004145a0
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x18
call fcn.004145a0
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 5
call fcn.004145a0
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 4
call fcn.004145a0
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 3
call fcn.004145a0
lea ecx, [ebp + 8]
mov byte [ebp - 4], 2
call fcn.004145a0
lea ecx, [ebp + 0x14]
mov byte [ebp - 4], 1
call fcn.004145a0
lea ecx, [ebp + 0x20]
mov byte [ebp - 4], 0
call fcn.004145a0
lea ecx, [ebp + 0x5c]
mov dword [ebp - 4], 0x28
call fcn.004145a0
lea ecx, [ebp + 0x48]
mov byte [ebp - 4], 0x27
call fcn.004145a0
mov byte [ebp - 4], 0x26
jmp 0x401cea