Function at 0x411c49
Capabilities:
Execute anti-debugging instructions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x90
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x4c], 0
push 8
call fcn.004cbacb
add esp, 4
mov dword [ebp - 0x50], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x64], 0
jmp 0x411d2b
pushal
mov eax, 1
mov eax, 2
mov eax, 4
mov eax, 2
mov eax, 5
mov eax, 4
mov eax, 2
mov eax, 5
mov eax, 6
popal
push edx
mov edx, 1
mov edx, 2
mov edx, 4
mov edx, 2
mov edx, 5
mov edx, 4
mov edx, 2
mov edx, 5
mov edx, 5
pop edx
fninit
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 4], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 8], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 0xc], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 0x10], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 0x14], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 0x18], eax
push 0x80000301
push 0
push dword [0x8686ac]
push 1
mov eax, 4
mov ebx, 0x53b170
call fcn.004cbad1
add esp, 0x10
call fcn.0041310c
call fcn.00417d50
call fcn.00418524
push 1
call fcn.00414984
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0x68]
push eax
call fcn.00418a8a
mov dword [ebp - 0x6c], eax
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x411f17
push ebx
call fcn.004cbac5
add esp, 4
cmp dword [ebp - 0x6c], 1
jge 0x41207f
mov dword [ebp - 0x68], esp
push 0
push 0xffffffff
mov eax, 0xd
call fcn.004cbaf5
cmp dword [ebp - 0x68], esp
je 0x411f5d
push 0xc1f
push 0x4034a90
push 6
call fcn.004cbadd
add esp, 0xc
call fcn.0040fa22
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x411f75
mov eax, 0x5a5ff5
push eax
push 1
mov ebx, 0x4cc040
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0xffffea4d
je 0x411ffd
push 0x5f5e100
call fcn.00418aff
mov dword [ebp - 0x68], eax
push dword [ebp - 0x68]
push dword [ebp - 0x1c]
mov ecx, 2
call fcn.00401dbe
add esp, 8
mov dword [ebp - 0x6c], eax
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x411fdd
push ebx
call fcn.004cbac5
add esp, 4
mov eax, dword [ebp - 0x6c]
push eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x411ff4
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x1c], eax
jmp 0x411f62
push 1
push 2
push 0x407f4000
push 0
call fcn.00418b9e
xor ebp, ebp
xor esp, esp
mov dword [ebp - 0x68], esp
push 0xfffffffe
mov eax, 0x38
call fcn.004cbaf5
cmp dword [ebp - 0x68], esp
je 0x41204b
push 0xd62
push 0x4034a90
push 6
call fcn.004cbadd
add esp, 0xc
mov dword [ebp - 0x68], esp
push 0
mov eax, 0x39
call fcn.004cbaf5
cmp dword [ebp - 0x68], esp
je 0x41207f
push 0xd7e
push 0x4034a90
push 6
call fcn.004cbadd
add esp, 0xc
push 3
call fcn.00414984
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0x68]
push eax
call fcn.00418a8a
mov dword [ebp - 0x6c], eax
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x4120b4
push ebx
call fcn.004cbac5
add esp, 4
cmp dword [ebp - 0x6c], 1
jge 0x41221c
mov dword [ebp - 0x68], esp
push 0
push 0xffffffff
mov eax, 0xd
call fcn.004cbaf5
cmp dword [ebp - 0x68], esp
je 0x4120fa
push 0xe1c
push 0x4034a90
push 6
call fcn.004cbadd
add esp, 0xc
call fcn.0040fa22
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x412112
mov eax, 0x5a5ff5
push eax
push 1
mov ebx, 0x4cc040
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0xffffea4d
je 0x41219a
push 0x5f5e100
call fcn.00418aff
mov dword [ebp - 0x68], eax
push dword [ebp - 0x68]
push dword [ebp - 0x1c]
mov ecx, 2
call fcn.00401dbe
add esp, 8
mov dword [ebp - 0x6c], eax
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x41217a
push ebx
call fcn.004cbac5
add esp, 4
mov eax, dword [ebp - 0x6c]
push eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x412191
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x1c], eax
jmp 0x4120ff
push 1
push 2
push 0x407f4000
push 0
call fcn.00418b9e
xor ebp, ebp
xor esp, esp
mov dword [ebp - 0x68], esp
push 0xfffffffe
mov eax, 0x38
call fcn.004cbaf5
cmp dword [ebp - 0x68], esp
je 0x4121e8
push 0xf5f
push 0x4034a90
push 6
call fcn.004cbadd
add esp, 0xc
mov dword [ebp - 0x68], esp
push 0
mov eax, 0x39
call fcn.004cbaf5
cmp dword [ebp - 0x68], esp
je 0x41221c
push 0xf7b
push 0x4034a90
push 6
call fcn.004cbadd
add esp, 0xc
push 1
call fcn.00414984
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0x68]
push eax
call fcn.00418a8a
mov dword [ebp - 0x6c], eax
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x412251
push ebx
call fcn.004cbac5
add esp, 4
cmp dword [ebp - 0x6c], 0
jg 0x41228c
push 0x80000301
push 0
push dword [0x8686ac]
push 1
mov eax, 4
mov ebx, 0x53b190
call fcn.004cbad1
add esp, 0x10
mov eax, 0x5a5ffd
jmp 0x413015
mov eax, 0x5bc080
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x4122a2
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
call fcn.00406082
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x68]
push eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x4122c8
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x24], eax
call fcn.0040dc32
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4ce1a0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x6c], eax
push dword [ebp - 0x24]
push dword [ebp - 0x6c]
push dword [0x8686c0]
mov ecx, 3
call fcn.00401971
add esp, 0xc
mov dword [ebp - 0x70], eax
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x412326
push ebx
call fcn.004cbac5
add esp, 4
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x70]
test eax, eax
jne 0x41233c
mov eax, 0x5a5ffd
push eax
push 1
mov ebx, 0x4cd6f0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x74], eax
mov ebx, dword [ebp - 0x70]
test ebx, ebx
je 0x412368
push ebx
call fcn.004cbac5
add esp, 4
mov dword [ebp - 0x78], 0
push 0
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.0040c980
mov dword [ebp - 0x7c], eax
mov ebx, dword [ebp - 0x74]
test ebx, ebx
je 0x4123a0
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x78]
test ebx, ebx
je 0x4123b3
push ebx
call fcn.004cbac5
add esp, 4
lea eax, [ebp - 0x7c]
push eax
call fcn.00405d6f
mov dword [ebp - 0x80], eax
mov ebx, dword [ebp - 0x7c]
test ebx, ebx
je 0x4123d8
push ebx
call fcn.004cbac5
add esp, 4
mov eax, dword [ebp - 0x80]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x4123ef
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x20]
push eax
call fcn.00418db6
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], 0x2faf080
push 0x80000301
push 0
push 0x159ced57
push 1
mov ebx, 0x4cca50
call fcn.004cbad7
add esp, 0x10
push 0x80000601
push edx
push eax
push 1
mov ebx, 0x4cd6f0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x70]
push eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x412460
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x2c], 0
jne 0x412a89
push 6
call fcn.00414984
mov dword [ebp - 0x68], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x68]
test eax, eax
jne 0x412494
mov eax, 0x5a5ffd
push eax
push 1
mov ebx, 0x4ce1a0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x6c], eax
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x4124c0
push ebx
call fcn.004cbac5
add esp, 4
mov eax, dword [ebp - 0x6c]
push eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x4124d7
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x3c], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x4124ee
mov eax, 0x5a5ffd
push eax
push 1
mov ebx, 0x4ce1a0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x68], eax
call fcn.0040dc32
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4ce1a0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x70], eax
push 0x80000301
push 0
push dword [ebp - 0x30]
push 1
mov ebx, 0x4ce1a0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x74], eax
push dword [ebp - 0x74]
push 0x5bbaf2
push dword [ebp - 0x70]
push 0x5bbaf2
push dword [ebp - 0x68]
push 0x5bbaf2
push dword [ebp - 0x28]
push 0x5bbaf2
push dword [ebp - 0x20]
push 0x5bbaf2
push dword [ebp - 0x3c]
push 0x5bc08b
mov ecx, 0xc
call fcn.00401971
add esp, 0x30
mov dword [ebp - 0x78], eax
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x4125ad
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x70]
test ebx, ebx
je 0x4125c0
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x74]
test ebx, ebx
je 0x4125d3
push ebx
call fcn.004cbac5
add esp, 4
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x78]
test eax, eax
jne 0x4125e9
mov eax, 0x5a5ffd
push eax
push 1
mov ebx, 0x4cd6f0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x7c], eax
mov ebx, dword [ebp - 0x78]
test ebx, ebx
je 0x412615
push ebx
call fcn.004cbac5
add esp, 4
mov eax, dword [ebp - 0x7c]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x41262c
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x40]
test eax, eax
jne 0x412643
mov eax, 0x5a5ff5
push eax
push 1
mov ebx, 0x4ce1a0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x68], eax
push dword [ebp - 0x68]
push 0x5bc091
mov ecx, 2
call fcn.00401971
add esp, 8
mov dword [ebp - 0x6c], eax
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x41268d
push ebx
call fcn.004cbac5
add esp, 4
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x4126a3
mov eax, 0x5a5ffd
push eax
push 1
mov ebx, 0x4cd6f0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x70], eax
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x4126cf
push ebx
call fcn.004cbac5
add esp, 4
mov eax, dword [ebp - 0x70]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4126e6
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x44], 0x989680
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
lea eax, [ebp - 0x40]
push eax
call fcn.0040ddd1
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x70]
push eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x41273b
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x48], eax
mov eax, 0x5a5ff5
xor ecx, ecx
test eax, eax
je 0x41274d
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 0x48]
xor ebx, ebx
test eax, eax
je 0x41275e
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x412775
dec eax
test ecx, ecx
je 0x412775
call fcn.00407a60
add esp, 0xc
test eax, eax
je 0x412a84
mov eax, dword [ebp - 0x48]
test eax, eax
je 0x41279a
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004cbacb
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x4127ab
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x4c], eax
mov ebx, dword [ebp - 0x50]
mov dword [ebp - 0x68], ebx
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x4127d4
push eax
mov ebx, eax
call fcn.004014dc
inc eax
push eax
call fcn.004cbacb
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x68]
mov ebx, dword [ebx]
test ebx, ebx
je 0x4127ea
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov ebx, dword [ebp - 0x68]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x50]
add ebx, 4
mov dword [ebp - 0x68], ebx
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x412819
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004cbacb
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x68]
mov ebx, dword [ebx]
test ebx, ebx
je 0x41282f
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov ebx, dword [ebp - 0x68]
mov dword [ebx], eax
push 0x8686dc
push 4
mov eax, 2
call fcn.004cbabf
add esp, 8
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x68], eax
mov ebx, dword [0x8686dc]
mov dword [ebp - 0x6c], ebx
call fcn.00401d9e
mov dword [ebp - 0x70], ecx
mov edi, dword [ebp - 0x6c]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x41288b
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x70]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x6c]
call fcn.004cbae9
add esp, 8
mov dword [0x8686dc], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x70]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x68]
push edi
push eax
push 8
call fcn.004cbacb
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4128f1
push eax
mov ebx, eax
call fcn.004014dc
inc eax
push eax
call fcn.004cbacb
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x41290e
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004cbacb
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop edi
mov dword [edi], eax
mov dword [ebp - 0x68], 0
push 0
push dword [ebp - 0x68]
push 1
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.00416473
mov dword [ebp - 0x6c], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x41294f
mov eax, 0x5a5ffd
push eax
push 1
mov ebx, 0x4cd6f0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x70], eax
push 0x80000301
push 0
push dword [ebp - 0x34]
push 1
mov ebx, 0x4cd6f0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x74], eax
push dword [ebp - 0x74]
push dword [ebp - 0x70]
mov ecx, 2
call fcn.00401dbe
add esp, 8
mov dword [ebp - 0x78], eax
mov ebx, dword [ebp - 0x70]
test ebx, ebx
je 0x4129bc
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x74]
test ebx, ebx
je 0x4129cf
push ebx
call fcn.004cbac5
add esp, 4
mov dword [ebp - 0x7c], 0
push 0
push dword [ebp - 0x7c]
push 1
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x6c]
push eax
call fcn.00418e78
mov dword [ebp - 0x80], eax
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x412a0f
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x78]
test ebx, ebx
je 0x412a22
push ebx
call fcn.004cbac5
add esp, 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x80]
test eax, eax
jne 0x412a38
mov eax, 0x5a5ff5
push eax
push 1
mov ebx, 0x4ce1a0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x84], eax
mov ebx, dword [ebp - 0x80]
test ebx, ebx
je 0x412a64
push ebx
call fcn.004cbac5
add esp, 4
mov eax, dword [ebp - 0x84]
push eax
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x412a7b
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x54], eax
jmp 0x412a84
jmp 0x412c4c
mov ebx, dword [0x8686dc]
call fcn.00401d9e
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x412ab3
push 0x15ea
push 0x4034a90
push 4
call fcn.004cbadd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x412ad0
push 0x15ea
push 0x4034a90
push 1
call fcn.004cbadd
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
push 1
lea eax, [ebp - 0x38]
push eax
push dword [ebp - 0x68]
call fcn.00416473
mov dword [ebp - 0x70], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x412b1c
mov eax, 0x5a5ffd
push eax
push 1
mov ebx, 0x4cd6f0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x74], eax
push 0x80000301
push 0
push dword [ebp - 0x34]
push 1
mov ebx, 0x4cd6f0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x78], eax
push dword [ebp - 0x78]
push dword [ebp - 0x74]
mov ecx, 2
call fcn.00401dbe
add esp, 8
mov dword [ebp - 0x7c], eax
mov ebx, dword [ebp - 0x74]
test ebx, ebx
je 0x412b89
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x78]
test ebx, ebx
je 0x412b9c
push ebx
call fcn.004cbac5
add esp, 4
mov dword [ebp - 0x80], 0
push 0
push dword [ebp - 0x80]
push 1
lea eax, [ebp - 0x7c]
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00418e78
mov dword [ebp - 0x84], eax
mov ebx, dword [ebp - 0x70]
test ebx, ebx
je 0x412bdc
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x7c]
test ebx, ebx
je 0x412bef
push ebx
call fcn.004cbac5
add esp, 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x84]
test eax, eax
jne 0x412c05
mov eax, 0x5a5ff5
push eax
push 1
mov ebx, 0x4ce1a0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x88], eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x412c31
push ebx
call fcn.004cbac5
add esp, 4
mov eax, dword [ebp - 0x88]
push eax
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x412c48
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x54], eax
call fcn.004190ea
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x68]
push eax
mov ebx, dword [ebp - 0x58]
test ebx, ebx
je 0x412c6e
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x58], eax
push dword [ebp - 0x34]
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.0041912a
mov dword [ebp - 0x5c], eax
push 1
mov eax, 0x5bbaf2
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0x68]
push eax
lea eax, [ebp - 0x54]
push eax
call fcn.0041981e
mov dword [ebp - 0x6c], eax
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x412cbe
push ebx
call fcn.004cbac5
add esp, 4
lea eax, [ebp - 0x6c]
push eax
call fcn.0040ade4
mov dword [ebp - 0x70], eax
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x412ce3
push ebx
call fcn.004cbac5
add esp, 4
push 0x80000301
push 0
push dword [ebp - 0x5c]
push 1
mov ebx, 0x4cd6f0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x78], 0
push 0
push dword [ebp - 0x78]
push 1
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00416473
mov dword [ebp - 0x7c], eax
mov ebx, dword [ebp - 0x70]
test ebx, ebx
je 0x412d45
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x74]
test ebx, ebx
je 0x412d58
push ebx
call fcn.004cbac5
add esp, 4
push 0
push 0
push 0
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x7c]
test eax, eax
jne 0x412d80
mov eax, 0x5a5ff5
push eax
push 3
mov ebx, 0x4cd920
call fcn.004cbad7
add esp, 0x28
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], ecx
mov ebx, dword [ebp - 0x7c]
test ebx, ebx
je 0x412db8
push ebx
call fcn.004cbac5
add esp, 4
mov ecx, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x88]
cmp ecx, 0x80000101
jne 0x412dd9
and eax, 0xff
jmp 0x412e3a
cmp ecx, 0x80000201
jne 0x412de4
cwde
jmp 0x412e3a
cmp ecx, 0x80000301
je 0x412e3a
cmp ecx, 0x80000401
je 0x412e3a
mov dword [ebp - 0x90], eax
cmp ecx, 0x80000501
je 0x412e21
cmp ecx, 0x80000601
je 0x412e29
push 0x1750
push 0x4034a90
push 2
call fcn.004cbadd
add esp, 0xc
fld dword [ebp - 0x90]
jmp 0x412e35
mov dword [ebp - 0x8c], edx
fld qword [ebp - 0x90]
call fcn.00401c02
mov dword [ebp - 0x60], eax
call fcn.0040dc32
cmp dword [ebp - 0x60], eax
je 0x412e79
push 0x80000301
push 0
push dword [0x8686ac]
push 1
mov eax, 4
mov ebx, 0x53b190
call fcn.004cbad1
add esp, 0x10
mov eax, 0x5a5ffd
jmp 0x413015
push 0
mov eax, 0x5bbaf2
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0x68]
push eax
lea eax, [ebp - 0x54]
push eax
call fcn.0041981e
mov dword [ebp - 0x6c], eax
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x412eb2
push ebx
call fcn.004cbac5
add esp, 4
mov eax, dword [ebp - 0x6c]
push eax
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x412ec9
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov dword [ebp - 0x64], eax
push 0x80000301
push 0
push dword [0x8686ac]
push 1
mov eax, 4
mov ebx, 0x53b190
call fcn.004cbad1
add esp, 0x10
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x412f04
mov eax, 0x5a5ffd
push eax
push 1
mov ebx, 0x4cc020
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
fsub qword [0x5bc070]
fstp qword [ebp - 0x78]
fld qword [ebp - 0x78]
call fcn.00401c02
push 0x80000301
push 0
push eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x412f61
mov eax, 0x5a5ffd
push eax
push 2
mov ebx, 0x4cc530
call fcn.004cbad7
add esp, 0x1c
mov dword [ebp - 0x7c], eax
lea eax, [ebp - 0x7c]
push eax
call fcn.00419a99
mov dword [ebp - 0x80], eax
mov ebx, dword [ebp - 0x7c]
test ebx, ebx
je 0x412f9f
push ebx
call fcn.004cbac5
add esp, 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x80]
test eax, eax
jne 0x412fb5
mov eax, 0x5a5ff5
push eax
push 1
mov ebx, 0x4ce1a0
call fcn.004cbad7
add esp, 0x10
mov dword [ebp - 0x84], eax
mov ebx, dword [ebp - 0x80]
test ebx, ebx
je 0x412fe1
push ebx
call fcn.004cbac5
add esp, 4
mov eax, dword [ebp - 0x84]
jmp 0x413015
push eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x413026
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x413036
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x413046
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x413056
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x413066
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x413076
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x413086
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x413096
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x4130a6
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x50]
push ebx
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4130ba
push ebx
call fcn.004cbac5
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4130ce
push ebx
call fcn.004cbac5
add esp, 4
pop ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x4130e7
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x58]
test ebx, ebx
je 0x4130f7
push ebx
call fcn.004cbac5
add esp, 4
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x413107
push ebx
call fcn.004cbac5
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret