Function at 0x403ab9
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0x30
mov eax, 0x4a2894
call fcn.00483f50
mov edi, ecx
and dword [ebp - 0x10], 0
mov esi, dword [ebp + 8]
lea ecx, [edi + 0x10]
push esi
call fcn.00401cd5
lea ecx, [edi + 0x8c]
push esi
call fcn.00401cd5
push 0
push ecx
mov ecx, esp
push str.672c242421263b3c292424
call fcn.0040185d
lea eax, [ebp + 8]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push dword [eax]
mov ecx, esi
call fcn.00403888
or ecx, 0xffffffff
cmp eax, ecx
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp + 8]
setne bl
add ecx, 0xfffffff0
call fcn.00404d08
test bl, bl
je 0x403b27
mov byte [edi + 0x90], 1
push 0
push ecx
mov ecx, esp
push str.673a293f2c293c2975
call fcn.0040185d
lea eax, [ebp - 0x24]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push dword [eax]
and dword [ebp - 4], 0
xor ebx, ebx
inc ebx
mov ecx, esi
mov dword [ebp - 0x10], ebx
call fcn.00403888
cmp eax, 0xffffffff
jne 0x403b88
push 0
push ecx
mov ecx, esp
push str.6721262e272b252c2421262d75
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push 3
pop ebx
push dword [eax]
mov ecx, esi
call fcn.00403888
mov byte [ebp + 0xb], 0
cmp eax, 0xffffffff
je 0x403b8c
mov byte [ebp + 0xb], 1
test bl, 2
je 0x403b9f
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
and ebx, 0xfffffffd
call fcn.00404d08
or dword [ebp - 4], 0xffffffff
test bl, 1
je 0x403bb6
mov ecx, dword [ebp - 0x24]
add ecx, 0xfffffff0
and ebx, 0xfffffffe
call fcn.00404d08
cmp byte [ebp + 0xb], 0
je 0x403bc8
lea eax, [edi + 0x10]
push eax
push esi
call fcn.004065d5
pop ecx
pop ecx
push ecx
mov ecx, esp
push str.672b3a3a2d2f2629252d75
call fcn.0040185d
lea eax, [ebp - 0x24]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x18]
push eax
mov ecx, edi
mov dword [ebp - 4], 1
call fcn.00403a98
mov ecx, dword [ebp - 0x24]
add ecx, 0xfffffff0
mov byte [ebp - 4], 3
call fcn.00404d08
mov eax, dword [ebp - 0x18]
cmp dword [eax - 0xc], 0
je 0x403c15
lea eax, [ebp - 0x18]
push eax
call fcn.0041675c
pop ecx
push ecx
mov ecx, esp
push str.67292f2d263c3a2d2f38293c2075
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp + 8]
push eax
mov ecx, edi
mov byte [ebp - 4], 4
call fcn.00403a98
push eax
mov ecx, 0x4f340c
mov byte [ebp - 4], 5
call fcn.00401cd5
mov ecx, dword [ebp + 8]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 3
call fcn.00404d08
push 0
push ecx
mov ecx, esp
push str.673d3b2d20232b3d
call fcn.0040185d
lea eax, [ebp + 8]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push dword [eax]
lea esi, [edi + 0x10]
mov ecx, esi
call fcn.00403888
mov ecx, dword [ebp + 8]
test eax, eax
lea ecx, [ecx - 0x10]
setns byte [0x4f3350]
call fcn.00404d08
mov eax, dword [edi]
push 0x4f340c
mov ecx, edi
call dword [eax + 8]
push ecx
mov ecx, esp
push str.672d303c2d3a26292424272f75
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp + 8]
push eax
mov ecx, edi
mov byte [ebp - 4], 6
call fcn.00403a98
push eax
mov ecx, 0x4f3b90
mov byte [ebp - 4], 7
call fcn.00401cd5
mov ecx, dword [ebp + 8]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
mov byte [ebp - 4], 3
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov eax, dword [0x4f3b90]
movzx ecx, byte [0x4f3b4c]
cmp dword [eax - 0xc], 0
push 1
pop eax
cmovne ecx, eax
mov byte [0x4f3b4c], cl
push 0x4f19f8
lea ecx, [ebp + 8]
call fcn.004016bd
movzx eax, byte [edi + 0x90]
push eax
push ecx
mov ecx, esp
push str.25172a013b0c242401263b3c292424756d2c
mov byte [ebp - 4], 8
call fcn.0040185d
lea eax, [ebp - 0x24]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push dword [eax]
lea eax, [ebp + 8]
push eax
mov byte [ebp - 4], 9
call fcn.004039b9
mov ecx, dword [ebp - 0x24]
add esp, 0xc
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.67293838212c75
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0xa
call fcn.00403a98
push 0xb
pop ecx
mov byte [ebp - 4], cl
lea ecx, [edi + 0x1c]
push eax
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.672d303c2d263b2127262629252d75
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0xc
call fcn.00403a98
mov byte [ebp - 4], 0xd
lea ecx, [edi + 0x20]
push eax
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.672a212b75
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0xe
call fcn.00403a98
lea ecx, [edi + 0x24]
push eax
mov byte [ebp - 4], 0xf
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.673e2d3a212e212d3a75
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x10
call fcn.00403a98
lea ecx, [edi + 0x28]
push eax
mov byte [ebp - 4], 0x11
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.677d783e2d3a212e212d3a75
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x12
call fcn.00403a98
lea ecx, [edi + 0x2c]
push eax
mov byte [ebp - 4], 0x13
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.673b3f2e273a7d7875
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x14
call fcn.00403a98
lea ecx, [edi + 0x30]
push eax
mov byte [ebp - 4], 0x15
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
mov eax, dword [edi + 0x30]
cmp dword [eax - 0xc], 0
je 0x403fa5
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push 0x4ae5ac
call fcn.0040185d
mov eax, dword [edi + 0x30]
push ecx
sub eax, 0x10
mov esi, esp
push eax
mov byte [ebp - 4], 0x16
call fcn.004036b6
add eax, 0x10
mov dword [esi], eax
pop ecx
lea eax, [ebp - 0x3c]
push eax
mov byte [ebp - 4], 8
call fcn.0042c630
add esp, 0xc
push eax
lea ecx, [edi + 0x34]
mov byte [ebp - 4], 0x17
call fcn.00401dc8
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 8
call fcn.004065af
lea esi, [edi + 0x10]
push ecx
mov ecx, esp
push 0x4ae5b0
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x18
call fcn.00403a98
lea ecx, [edi + 0x40]
push eax
mov byte [ebp - 4], 0x19
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.6721263b3c2924242d3a2e3d24243e2d3a3b21272675
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x1a
call fcn.00403a98
lea ecx, [edi + 0x44]
push eax
mov byte [ebp - 4], 0x1b
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.6721263b3c292424293c2127263c21252d75
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x1c
call fcn.00403a98
lea ecx, [edi + 0x48]
push eax
mov byte [ebp - 4], 0x1d
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
call fcn.00404d08
push ecx
mov ecx, esp
push str.673b3a2b212c75
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x1e
call fcn.00403a98
lea ecx, [edi + 0x4c]
push eax
mov byte [ebp - 4], 0x1f
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.673b3d2a212c75
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x20
call fcn.00403a98
lea ecx, [edi + 0x50]
push eax
mov byte [ebp - 4], 0x21
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.67322c293c2975
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x22
call fcn.00403a98
lea ecx, [edi + 0x54]
push eax
mov byte [ebp - 4], 0x23
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.673b3c293c3b2c272529212675
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x24
call fcn.00403a98
lea ecx, [edi + 0x5c]
push eax
mov byte [ebp - 4], 0x25
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.672d3a3a273a3b2c272529212675
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x26
call fcn.00403a98
lea ecx, [edi + 0x64]
push eax
mov byte [ebp - 4], 0x27
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.672527262d3c2132293c2127262c272529212675
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x28
call fcn.00403a98
mov byte [ebp - 4], 0x29
lea ecx, [edi + 0x60]
push eax
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push 0
push ecx
mov ecx, esp
push str.672924243d3b2d3a3b
call fcn.0040185d
lea eax, [ebp - 0x24]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push dword [eax]
mov ecx, esi
call fcn.00403888
mov ecx, dword [ebp - 0x24]
test eax, eax
setns al
add ecx, 0xfffffff0
mov byte [edi + 0x18], al
call fcn.00404d08
push ecx
mov ecx, esp
push str.673a3d262e3a2725
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x2a
call fcn.00403a98
lea ecx, [edi + 0x70]
push eax
mov byte [ebp - 4], 0x2b
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.672c2d2e2a3a2775
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x2c
call fcn.00403a98
lea ecx, [edi + 0x58]
push eax
mov byte [ebp - 4], 0x2d
call fcn.00401cd5
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
call fcn.00404d08
push ecx
mov ecx, esp
push str.67213b2926312975
call fcn.0040185d
lea eax, [ebp - 0x2c]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x28]
or ebx, 4
push eax
mov ecx, edi
mov byte [ebp - 4], 0x2e
mov dword [ebp - 0x10], ebx
call fcn.00403a98
or ebx, 8
push 0x4ae844
mov ecx, eax
mov dword [ebp - 4], 0x2f
mov dword [ebp - 0x10], ebx
call fcn.00403715
test eax, eax
je 0x4043dd
push ecx
mov ecx, esp
push str.67213b2926312975
call fcn.0040185d
lea eax, [ebp - 0x20]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x24]
or ebx, 0x10
push eax
mov ecx, edi
mov dword [ebp - 4], 0x30
mov dword [ebp - 0x10], ebx
call fcn.00403a98
or ebx, 0x20
push 0x4ae874
mov ecx, eax
mov dword [ebp - 4], 0x31
mov dword [ebp - 0x10], ebx
call fcn.00403715
test eax, eax
je 0x4043dd
xor eax, eax
jmp 0x4043e0
xor eax, eax
inc eax
mov byte [edi + 0x91], al
test bl, 0x20
je 0x4043f9
mov ecx, dword [ebp - 0x24]
add ecx, 0xfffffff0
and ebx, 0xffffffdf
call fcn.00404d08
test bl, 0x10
je 0x40440c
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
and ebx, 0xffffffef
call fcn.00404d08
test bl, 8
je 0x40441f
mov ecx, dword [ebp - 0x28]
add ecx, 0xfffffff0
and ebx, 0xfffffff7
call fcn.00404d08
mov dword [ebp - 4], 8
test bl, 4
je 0x404436
mov ecx, dword [ebp - 0x2c]
add ecx, 0xfffffff0
call fcn.00404d08
push ecx
mov ecx, esp
push 0x4ae878
call fcn.0040185d
lea eax, [ebp - 0x28]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x2c]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x32
call fcn.00403a98
lea ecx, [edi + 0x78]
push eax
mov byte [ebp - 4], 0x33
call fcn.00401cd5
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x28]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push 0
push ecx
mov ecx, esp
push str.672c27263c293d3c272d26292a242d
call fcn.0040185d
lea eax, [ebp - 0x2c]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push dword [eax]
mov ecx, esi
call fcn.00403888
mov ecx, dword [ebp - 0x2c]
test eax, eax
setns al
add ecx, 0xfffffff0
mov byte [edi + 0x84], al
call fcn.00404d08
push 0
push ecx
mov ecx, esp
push str.672c243c292e3c21263b3c
call fcn.0040185d
lea eax, [ebp - 0x2c]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push dword [eax]
mov ecx, esi
call fcn.00403888
mov ecx, dword [ebp - 0x2c]
test eax, eax
setns al
add ecx, 0xfffffff0
mov byte [edi + 0x86], al
call fcn.00404d08
push ecx
mov ecx, esp
push str.672c243c3c3b23292e3c21263b3c
call fcn.0040185d
lea eax, [ebp - 0x28]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x34
push eax
mov ecx, edi
call fcn.00403a98
lea ecx, [edi + 0x88]
push eax
mov byte [ebp - 4], 0x35
call fcn.00401cd5
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x28]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.673b212c75
call fcn.0040185d
lea eax, [ebp - 0x28]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x2c]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x36
call fcn.00403a98
lea ecx, [edi + 0x6c]
push eax
mov byte [ebp - 4], 0x37
call fcn.00401cd5
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x28]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.67292c2c21262e27223b272675
call fcn.0040185d
lea eax, [ebp - 0x28]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x2c]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x38
call fcn.00403a98
lea ecx, [edi + 0x7c]
push eax
mov byte [ebp - 4], 0x39
call fcn.00401cd5
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x28]
add ecx, 0xfffffff0
mov byte [ebp - 4], 8
call fcn.00404d08
push ecx
mov ecx, esp
push str.672c24312c21263b3c2424
call fcn.0040185d
lea eax, [ebp - 0x28]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
mov byte [ebp - 4], 0x3a
push eax
lea eax, [ebp - 0x2c]
push eax
mov ecx, edi
call fcn.00403a98
lea ecx, [edi + 0x80]
push eax
mov byte [ebp - 4], 0x3b
call fcn.00401cd5
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x28]
mov byte [ebp - 4], 8
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov eax, dword [edi]
lea ecx, [ebp - 0x14]
push ecx
mov ecx, edi
call dword [eax + 0xc]
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x3c
cmp dword [eax - 0xc], 0
je 0x4048db
push ecx
mov ecx, esp
push str.3c293b23
call fcn.0040185d
lea eax, [ebp - 0x2c]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push dword [eax]
lea ecx, [edi + 0x70]
mov byte [ebp - 4], 0x3d
call fcn.00403715
mov ecx, dword [ebp - 0x2c]
mov ebx, eax
neg ebx
sbb bl, bl
add ecx, 0xfffffff0
mov byte [ebp - 4], 0x3c
call fcn.00404d08
mov esi, 0x1f40
inc bl
je 0x4046ae
call fcn.0048440b
cdq
idiv esi
add edx, 0x7d0
push edx
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x14]
push eax
call fcn.0042c61c
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
pop ecx
mov dword [edi + 0x14], eax
call ebx
cmp eax, 0xb7
jne 0x404870
cmp dword [edi + 0x14], 0
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
je 0x4046df
push dword [edi + 0x14]
call esi
call fcn.0048440b
cdq
mov ecx, 0x1f40
idiv ecx
add edx, 0x7d0
push edx
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x14]
push eax
call fcn.0042c61c
pop ecx
mov dword [edi + 0x14], eax
call ebx
cmp eax, 0xb7
jne 0x404807
cmp dword [edi + 0x14], 0
je 0x404722
push dword [edi + 0x14]
call esi
and dword [edi + 0x14], 0
push ecx
mov ecx, esp
push str.3c293b23
call fcn.0040185d
lea eax, [ebp - 0x2c]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push dword [eax]
lea ecx, [edi + 0x70]
mov byte [ebp - 4], 0x3e
call fcn.00403715
mov ecx, dword [ebp - 0x2c]
mov ebx, eax
neg ebx
sbb bl, bl
add ecx, 0xfffffff0
mov byte [ebp - 4], 0x3c
call fcn.00404d08
inc bl
je 0x4047d9
push ecx
mov ecx, esp
push str.3a2d292c31172d30213b3c3b
call fcn.0040185d
lea eax, [ebp - 0x24]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
push ecx
mov ecx, esp
push str.253d3c2d30172924
mov byte [ebp - 4], 0x3f
call fcn.0040185d
lea eax, [ebp - 0x28]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 4], 0x40
call fcn.00401dfd
add esp, 0xc
push eax
mov ecx, edi
mov byte [ebp - 4], 0x41
call fcn.00405c87
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00404d08
jmp 0x4048df
mov ecx, dword [0x4f3280]
push 0xb
lea eax, [ecx + 1]
imul eax, ecx
cdq
pop ecx
idiv ecx
cmp edx, 7
jne 0x4048db
xor eax, eax
push eax
push eax
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_PeekNamedPipe]
jmp 0x4048db
cmp dword [edi + 0x14], 0
jne 0x4048db
lea eax, [ebp - 0x24]
push eax
call fcn.0042cca1
pop ecx
push eax
push ecx
mov ecx, esp
push str.2b3a2d293c2d17253d3c2d3017
mov byte [ebp - 4], 0x42
call fcn.0040185d
lea eax, [ebp - 0x28]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 4], 0x43
call fcn.0041db62
add esp, 0xc
push eax
mov ecx, edi
mov byte [ebp - 4], 0x44
call fcn.00405c87
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x24]
jmp 0x4048d3
cmp dword [edi + 0x14], 0
jne 0x4048db
lea eax, [ebp - 0x1c]
push eax
call fcn.0042cca1
pop ecx
push eax
push ecx
mov ecx, esp
push str.2b3a2d293c2d17253d3c2d3017
mov byte [ebp - 4], 0x45
call fcn.0040185d
lea eax, [ebp - 0x28]
push eax
call fcn.0042cbd1
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 4], 0x46
call fcn.0041db62
add esp, 0xc
push eax
mov ecx, edi
mov byte [ebp - 4], 0x47
call fcn.00405c87
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp - 0x1c]
lea ecx, [ecx - 0x10]
call fcn.00404d08
and dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00404d08
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
call fcn.00404d08
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.00404d08
mov eax, dword [ebp - 0x1c]
call fcn.00483f1e
ret 4