Function at 0x40184f
Capabilities:
Execute anti-debugging instructions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x100
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
push 0x20
call fcn.0042594a
add esp, 4
mov dword [ebp - 0x24], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 8
rep stosd dword es:[edi], eax
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
mov dword [ebp - 0x50], 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
push 8
call fcn.0042594a
add esp, 4
mov dword [ebp - 0x68], eax
mov edi, eax
mov esi, 0x4c74dc
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x78], 0
push 8
call fcn.0042594a
add esp, 4
mov dword [ebp - 0x7c], eax
mov edi, eax
mov esi, 0x4c74dc
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x80], 0
jmp 0x401988
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
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
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 esi
nop
mov esi, 0x666888
mov esi, 0x889688
nop
pop esi
nop
push 0x80000301
push 0
push dword [0x5d7cdc]
push 1
mov eax, 5
mov ebx, 0x48c2c0
call fcn.0042596e
add esp, 0x10
call fcn.004041cf
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0x18]
mov dword [0x5d7ce0], eax
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
je 0x401b48
push eax
mov ebx, eax
call fcn.004010db
inc eax
push eax
call fcn.0042594a
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x401b59
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x84], esp
mov eax, dword [ebp - 0x24]
push eax
push 0x10
call fcn.0042594a
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0x88], eax
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, 0
call fcn.00425944
cmp dword [ebp - 0x84], esp
je 0x401bfb
push 6
call fcn.0042593e
add esp, 4
push eax
mov ebx, dword [ebp - 0x88]
push ebx
mov edi, dword [ebp - 0x8c]
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
call fcn.00425950
add esp, 4
pop eax
call fcn.004041cf
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x88], eax
mov ebx, dword [ebp - 0x24]
mov dword [ebp - 0x8c], ebx
mov ebx, dword [ebp - 0x8c]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x94], eax
fild dword [ebp - 0x94]
fstp qword [ebp - 0x94]
fld qword [ebp - 0x94]
fmul qword [0x4c74a7]
fstp qword [ebp - 0x9c]
push 0x80000601
push dword [ebp - 0x98]
push dword [ebp - 0x9c]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xa0], eax
mov ebx, dword [ebp - 0x24]
add ebx, 4
mov dword [ebp - 0xa4], ebx
mov ebx, dword [ebp - 0xa4]
mov ax, word [ebx]
cwde
mov dword [ebp - 0xac], eax
fild dword [ebp - 0xac]
fstp qword [ebp - 0xac]
fld qword [ebp - 0xac]
fmul qword [0x4c74a7]
fstp qword [ebp - 0xb4]
push 0x80000601
push dword [ebp - 0xb0]
push dword [ebp - 0xb4]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xb8], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0xc
mov dword [ebp - 0xbc], ebx
mov ebx, dword [ebp - 0xbc]
mov ax, word [ebx]
cwde
mov dword [ebp - 0xc4], eax
fild dword [ebp - 0xc4]
fstp qword [ebp - 0xc4]
fld qword [ebp - 0xc4]
fmul qword [0x4c74a7]
fstp qword [ebp - 0xcc]
push 0x80000601
push dword [ebp - 0xc8]
push dword [ebp - 0xcc]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xd0], eax
push dword [ebp - 0xd0]
push dword [ebp - 0xb8]
push dword [ebp - 0xa0]
push dword [ebp - 0x88]
mov ecx, 4
call fcn.00401146
add esp, 0x10
mov dword [ebp - 0xd4], eax
mov ebx, dword [ebp - 0x88]
test ebx, ebx
je 0x401df3
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0xa0]
test ebx, ebx
je 0x401e06
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0xb8]
test ebx, ebx
je 0x401e19
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0xd0]
test ebx, ebx
je 0x401e2c
push ebx
call fcn.00425950
add esp, 4
mov eax, dword [ebp - 0xd4]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x401e43
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0x10
mov dword [ebp - 0x84], ebx
mov ebx, dword [ebp - 0x84]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x8c], eax
fild dword [ebp - 0x8c]
fstp qword [ebp - 0x8c]
fld qword [ebp - 0x8c]
fmul qword [0x4c74a7]
fstp qword [ebp - 0x94]
push 0x80000601
push dword [ebp - 0x90]
push dword [ebp - 0x94]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x98], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0x14
mov dword [ebp - 0x9c], ebx
mov ebx, dword [ebp - 0x9c]
mov ax, word [ebx]
cwde
mov dword [ebp - 0xa4], eax
fild dword [ebp - 0xa4]
fstp qword [ebp - 0xa4]
fld qword [ebp - 0xa4]
fadd qword [0x4c74af]
fstp qword [ebp - 0xac]
push 0x80000601
push dword [ebp - 0xa8]
push dword [ebp - 0xac]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xb0], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0x18
mov dword [ebp - 0xb4], ebx
mov ebx, dword [ebp - 0xb4]
mov ax, word [ebx]
cwde
mov dword [ebp - 0xbc], eax
fild dword [ebp - 0xbc]
fstp qword [ebp - 0xbc]
fld qword [ebp - 0xbc]
fmul qword [0x4c74a7]
fstp qword [ebp - 0xc4]
push 0x80000601
push dword [ebp - 0xc0]
push dword [ebp - 0xc4]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xc8], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0x1c
mov dword [ebp - 0xcc], ebx
mov ebx, dword [ebp - 0xcc]
mov ax, word [ebx]
cwde
mov dword [ebp - 0xd4], eax
fild dword [ebp - 0xd4]
fstp qword [ebp - 0xd4]
fld qword [ebp - 0xd4]
fmul qword [0x4c74b7]
fstp qword [ebp - 0xdc]
push 0x80000601
push dword [ebp - 0xd8]
push dword [ebp - 0xdc]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xe0], eax
mov ebx, dword [ebp - 0x24]
add ebx, 8
mov dword [ebp - 0xe4], ebx
mov ebx, dword [ebp - 0xe4]
mov ax, word [ebx]
cwde
mov dword [ebp - 0xec], eax
fild dword [ebp - 0xec]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fmul qword [0x4c74a7]
fstp qword [ebp - 0xf4]
push 0x80000601
push dword [ebp - 0xf0]
push dword [ebp - 0xf4]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xf8], eax
call fcn.0040434d
mov dword [ebp - 0xfc], eax
push dword [ebp - 0xfc]
push dword [ebp - 0xf8]
push dword [ebp - 0xe0]
push dword [ebp - 0xc8]
push dword [ebp - 0xb0]
push dword [ebp - 0x98]
push dword [ebp - 0x28]
mov ecx, 7
call fcn.00401146
add esp, 0x1c
mov dword [ebp - 0x100], eax
mov ebx, dword [ebp - 0x98]
test ebx, ebx
je 0x40208e
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0xb0]
test ebx, ebx
je 0x4020a1
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0xc8]
test ebx, ebx
je 0x4020b4
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0xe0]
test ebx, ebx
je 0x4020c7
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x4020da
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x4020ed
push ebx
call fcn.00425950
add esp, 4
mov eax, dword [ebp - 0x100]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x402104
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
push getpeername
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x40211b
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x84], eax
lea eax, [ebp - 0x84]
push eax
call fcn.00404701
mov dword [ebp - 0x88], eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x402159
push ebx
call fcn.00425950
add esp, 4
push 0x80000301
push 0
push dword [ebp - 0x2c]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x8c], eax
push dword [ebp - 0x8c]
push dword [ebp - 0x88]
mov ecx, 2
call fcn.00401146
add esp, 8
mov dword [ebp - 0x90], eax
mov ebx, dword [ebp - 0x88]
test ebx, ebx
je 0x4021ad
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x8c]
test ebx, ebx
je 0x4021c0
push ebx
call fcn.00425950
add esp, 4
mov eax, dword [ebp - 0x90]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x4021d7
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
cmp dword [ebp + 0x18], 0
jne 0x40224b
push getpeername
push 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x4021f8
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x425f80
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x40224b
call fcn.00404a14
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x84]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x402240
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x30], 1
call fcn.0040979c
mov eax, dword [ebp - 4]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x402272
push eax
mov ebx, eax
call fcn.004010db
inc eax
push eax
call fcn.0042594a
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x402283
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x38], eax
mov eax, 0x4c74bf
push eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x40229d
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x3c], eax
call fcn.00404a14
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x84]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4022c3
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x48], eax
call fcn.0040af7f
mov dword [0x5d7ce4], eax
call fcn.0040c136
mov dword [ebp - 0x84], eax
push getpeername
push 0
mov eax, dword [ebp - 0x84]
test eax, eax
jne 0x4022fe
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x88], eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x40232a
push ebx
call fcn.00425950
add esp, 4
mov dword [ebp - 0x8c], 0
push 0
push dword [ebp - 0x8c]
push 1
mov eax, 0x4c74c1
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0x90]
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.0040d631
mov dword [ebp - 0x94], eax
mov ebx, dword [ebp - 0x88]
test ebx, ebx
je 0x402375
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x90]
test ebx, ebx
je 0x402388
push ebx
call fcn.00425950
add esp, 4
push 1
mov eax, 0x4c74c1
mov dword [ebp - 0x98], eax
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x94]
push eax
call fcn.0040d902
mov dword [ebp - 0x9c], eax
mov ebx, dword [ebp - 0x94]
test ebx, ebx
je 0x4023c1
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x98]
test ebx, ebx
je 0x4023d4
push ebx
call fcn.00425950
add esp, 4
lea eax, [ebp - 0x9c]
push eax
call fcn.004043ea
mov dword [ebp - 0xa0], eax
mov ebx, dword [ebp - 0x9c]
test ebx, ebx
je 0x4023f9
push ebx
call fcn.00425950
add esp, 4
mov eax, dword [ebp - 0xa0]
push eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x402410
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x4c], eax
push 0x80000301
push 0
push dword [0x5d7ce8]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x84], eax
call fcn.0040eb7e
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x8c], eax
push getpeername
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x402471
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x90], eax
push 0x80000301
push 0
push dword [ebp - 0x44]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x94], eax
push 0x80000301
push 0
push dword [ebp - 0x48]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x98], eax
push 0x80000301
push 0
push dword [ebp - 0x34]
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0xa0], 0
push 0
push dword [ebp - 0xa0]
mov dword [ebp - 0xa4], 0
push 0
lea eax, [ebp - 0xa4]
push eax
lea eax, [ebp - 0x9c]
push eax
call fcn.0040d631
mov dword [ebp - 0xa8], eax
mov ebx, dword [ebp - 0x9c]
test ebx, ebx
je 0x40253a
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0xa4]
test ebx, ebx
je 0x40254d
push ebx
call fcn.00425950
add esp, 4
lea eax, [ebp - 0xa8]
push eax
call fcn.004043ea
mov dword [ebp - 0xac], eax
mov ebx, dword [ebp - 0xa8]
test ebx, ebx
je 0x402572
push ebx
call fcn.00425950
add esp, 4
call fcn.0040ebd9
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xb4], eax
push 0x80000301
push 0
push dword [0x5d7ce4]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xb8], eax
push dword [0x5d7cec]
push dword [ebp - 0x3c]
push dword [ebp - 0xb8]
push dword [ebp - 0x3c]
push dword [ebp - 0xb4]
push 0x4c74d2
push dword [ebp - 0x4c]
push dword [ebp - 0x3c]
push dword [ebp - 0xac]
push dword [ebp - 0x3c]
push dword [ebp - 0x98]
push dword [ebp - 0x3c]
push dword [ebp - 0x94]
push dword [ebp - 0x3c]
push dword [ebp - 0x90]
push dword [ebp - 0x3c]
push dword [ebp - 0x8c]
push dword [ebp - 0x3c]
push dword [ebp - 0x84]
push dword [ebp - 0x3c]
push dword [ebp - 0x38]
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
push 0x4c74d4
mov ecx, 0x18
call fcn.00401146
add esp, 0x60
mov dword [ebp - 0xbc], eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x402649
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x8c]
test ebx, ebx
je 0x40265c
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x90]
test ebx, ebx
je 0x40266f
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x94]
test ebx, ebx
je 0x402682
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x98]
test ebx, ebx
je 0x402695
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0xac]
test ebx, ebx
je 0x4026a8
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0xb4]
test ebx, ebx
je 0x4026bb
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0xb8]
test ebx, ebx
je 0x4026ce
push ebx
call fcn.00425950
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0xbc]
test eax, eax
jne 0x4026e4
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xc0], eax
mov ebx, dword [ebp - 0xbc]
test ebx, ebx
je 0x402710
push ebx
call fcn.00425950
add esp, 4
mov eax, dword [ebp - 0xc0]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x402727
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
cmp dword [ebp + 0x18], 1
jne 0x4027f4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x402748
mov eax, 0x4c74dc
push eax
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x84], eax
push dword [ebp - 0x84]
push 0x4c74e4
mov ecx, 2
call fcn.00401146
add esp, 8
mov dword [ebp - 0x88], eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x402792
push ebx
call fcn.00425950
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0x88]
test eax, eax
jne 0x4027a8
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x8c], eax
mov ebx, dword [ebp - 0x88]
test ebx, ebx
je 0x4027d4
push ebx
call fcn.00425950
add esp, 4
mov eax, dword [ebp - 0x8c]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x4027eb
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
jmp 0x4028ae
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x402807
mov eax, 0x4c74dc
push eax
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x84], eax
push dword [ebp - 0x84]
push 0x4c74ed
mov ecx, 2
call fcn.00401146
add esp, 8
mov dword [ebp - 0x88], eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x402851
push ebx
call fcn.00425950
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0x88]
test eax, eax
jne 0x402867
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x8c], eax
mov ebx, dword [ebp - 0x88]
test ebx, ebx
je 0x402893
push ebx
call fcn.00425950
add esp, 4
mov eax, dword [ebp - 0x8c]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x4028aa
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0x2faf080
mov dword [ebp - 0x58], 0x989680
cmp dword [ebp - 0x1c], 0
je 0x402919
call fcn.004041cf
mov dword [ebp - 0x90], eax
fild dword [ebp - 0x90]
fstp qword [ebp - 0x90]
fld qword [ebp - 0x90]
fild dword [ebp - 0x1c]
fstp qword [ebp - 0x98]
fsub qword [ebp - 0x98]
fstp qword [ebp - 0xa0]
fld qword [ebp - 0xa0]
fsub qword [0x4c74f2]
fcomp qword [0x4c74fa]
fnstsw ax
test ah, 1
jne 0x402919
xor eax, eax
jmp 0x40291e
mov eax, 1
test eax, eax
je 0x402993
mov dword [ebp - 0x84], 0
push 0
push dword [ebp - 0x84]
mov dword [ebp - 0x88], 0
push 0
push dword [ebp - 0x88]
mov dword [ebp - 0x8c], 0
push 0
push dword [ebp - 0x8c]
lea eax, [ebp - 0x50]
push eax
call fcn.0040ed25
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x90]
push eax
mov ebx, dword [ebp - 0x5c]
test ebx, ebx
je 0x402982
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x5c], eax
call fcn.004041cf
mov dword [ebp - 0x1c], eax
jmp 0x402998
call fcn.0041081d
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x5c]
test eax, eax
jne 0x4029ab
mov eax, 0x4c74dc
push eax
push 1
mov ebx, 0x425fa0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x4029f4
mov eax, 0x4c7502
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x4029e9
push ebx
call fcn.00425950
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
jmp 0x404016
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x5c]
test eax, eax
jne 0x402a07
mov eax, 0x4c74dc
push eax
push 1
mov ebx, 0x425fa0
call fcn.00425956
add esp, 0x10
push 0x80000301
push 0
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x5c]
test eax, eax
jne 0x402a35
mov eax, 0x4c74dc
push eax
push 2
mov ebx, 0x427330
call fcn.00425956
add esp, 0x1c
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x88]
push eax
mov ebx, dword [ebp - 0x60]
test ebx, ebx
je 0x402a65
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x60], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x402a7c
mov eax, 0x4c74dc
push eax
push 1
mov ebx, 0x425fa0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jne 0x402b34
mov eax, 0x4c751d
push eax
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x402ab8
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x64], eax
push 0
push 0
push 0
push getpeername
push 0
push 0x4c7529
push 0x80000301
push 0
push 0x10
push getpeername
push 0
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x402aed
mov eax, 0x4c745c
push eax
push 4
mov ebx, 0x427ca0
call fcn.00425956
add esp, 0x34
mov dword [ebp - 0x84], esp
push 0
push 0xffffffff
mov eax, 1
call fcn.00425944
cmp dword [ebp - 0x84], esp
je 0x402b2f
push 6
call fcn.0042593e
add esp, 4
jmp 0x404016
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x402b47
mov eax, 0x4c74dc
push eax
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x84], eax
push 0
push 0
push 0
push getpeername
push 0
push 0x4c74bf
push getpeername
push 0
mov eax, dword [ebp - 0x84]
test eax, eax
jne 0x402b88
mov eax, 0x4c745c
push eax
push 3
mov ebx, 0x426f20
call fcn.00425956
add esp, 0x28
mov dword [ebp - 0x88], eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x402bb4
push ebx
call fcn.00425950
add esp, 4
mov eax, dword [ebp - 0x88]
push eax
mov ebx, dword [ebp - 0x68]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x402bd9
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x402bd5
imul eax, dword [ebx]
jmp 0x402bca
mov ecx, eax
test ecx, ecx
je 0x402bf8
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x402bf1
push ebx
push eax
call fcn.00425950
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x402bdf
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x68], eax
mov ebx, dword [ebp - 0x68]
call fcn.004017ef
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0x10
jne 0x403e34
push 0x80000301
push 0
push 8
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x5c]
test eax, eax
jne 0x402c3e
mov eax, 0x4c74dc
push eax
push 2
mov ebx, 0x427370
call fcn.00425956
add esp, 0x1c
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x84]
push eax
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x402c6e
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x6c], eax
push 0x80000301
push 0
push 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x402c91
mov eax, 0x4c74dc
push eax
push 2
mov ebx, 0x427330
call fcn.00425956
add esp, 0x1c
mov dword [ebp - 0x84], eax
push 0
push 0
push 0
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x84]
test eax, eax
jne 0x402cd2
mov eax, 0x4c74dc
push eax
push 3
mov ebx, 0x4271b0
call fcn.00425956
add esp, 0x28
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0x88], ecx
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x402d0a
push ebx
call fcn.00425950
add esp, 4
mov ecx, dword [ebp - 0x88]
mov edx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x90]
cmp ecx, 0x80000101
jne 0x402d2b
and eax, 0xff
jmp 0x402d82
cmp ecx, 0x80000201
jne 0x402d36
cwde
jmp 0x402d82
cmp ecx, 0x80000301
je 0x402d82
cmp ecx, 0x80000401
je 0x402d82
mov dword [ebp - 0x98], eax
cmp ecx, 0x80000501
je 0x402d69
cmp ecx, 0x80000601
je 0x402d71
push 2
call fcn.0042593e
add esp, 4
fld dword [ebp - 0x98]
jmp 0x402d7d
mov dword [ebp - 0x94], edx
fld qword [ebp - 0x98]
call fcn.00401808
mov dword [ebp - 0x70], eax
push 0x80000301
push 0
push 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x402da4
mov eax, 0x4c74dc
push eax
push 2
mov ebx, 0x427370
call fcn.00425956
add esp, 0x1c
mov dword [ebp - 0x84], eax
push 0
push 0
push 0
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x84]
test eax, eax
jne 0x402de5
mov eax, 0x4c74dc
push eax
push 3
mov ebx, 0x4271b0
call fcn.00425956
add esp, 0x28
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0x88], ecx
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x402e1d
push ebx
call fcn.00425950
add esp, 4
mov ecx, dword [ebp - 0x88]
mov edx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x90]
cmp ecx, 0x80000101
jne 0x402e3e
and eax, 0xff
jmp 0x402e95
cmp ecx, 0x80000201
jne 0x402e49
cwde
jmp 0x402e95
cmp ecx, 0x80000301
je 0x402e95
cmp ecx, 0x80000401
je 0x402e95
mov dword [ebp - 0x98], eax
cmp ecx, 0x80000501
je 0x402e7c
cmp ecx, 0x80000601
je 0x402e84
push 2
call fcn.0042593e
add esp, 4
fld dword [ebp - 0x98]
jmp 0x402e90
mov dword [ebp - 0x94], edx
fld qword [ebp - 0x98]
call fcn.00401808
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x70], 0
je 0x402eb3
cmp dword [ebp - 0x74], 0
jle 0x402eb3
mov eax, 1
jmp 0x402eb8
mov eax, 0
test eax, eax
je 0x4031e5
cmp dword [ebp - 0x70], 1
jne 0x402fc9
push 0x80000301
push 0
push dword [ebp - 0x54]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x84], eax
push getpeername
push 0
mov eax, dword [0x5d7cec]
test eax, eax
jne 0x402f01
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x88], eax
lea eax, [ebp - 0x88]
push eax
call fcn.00404798
mov dword [ebp - 0x8c], eax
mov ebx, dword [ebp - 0x88]
test ebx, ebx
je 0x402f3f
push ebx
call fcn.00425950
add esp, 4
push 0x80000301
push 0
push dword [ebp - 0x8c]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x90], eax
push dword [ebp - 0x90]
push dword [ebp - 0x84]
mov ecx, 2
call fcn.00401146
add esp, 8
mov dword [ebp - 0x94], eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x402f96
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x90]
test ebx, ebx
je 0x402fa9
push ebx
call fcn.00425950
add esp, 4
mov eax, dword [ebp - 0x94]
push eax
mov ebx, dword [ebp - 0x78]
test ebx, ebx
je 0x402fc0
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x78], eax
jmp 0x4031d6
cmp dword [ebp - 0x30], 0
je 0x4030d7
push 0x80000301
push 0
push dword [ebp - 0x54]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x84], eax
push getpeername
push 0
mov eax, dword [0x5d7cec]
test eax, eax
jne 0x40300a
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x88], eax
lea eax, [ebp - 0x88]
push eax
call fcn.00404798
mov dword [ebp - 0x8c], eax
mov ebx, dword [ebp - 0x88]
test ebx, ebx
je 0x403048
push ebx
call fcn.00425950
add esp, 4
push 0x80000301
push 0
push dword [ebp - 0x8c]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x90], eax
push dword [ebp - 0x90]
push dword [ebp - 0x84]
push 0x4c753a
mov ecx, 3
call fcn.00401146
add esp, 0xc
mov dword [ebp - 0x94], eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x4030a4
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x90]
test ebx, ebx
je 0x4030b7
push ebx
call fcn.00425950
add esp, 4
mov eax, dword [ebp - 0x94]
push eax
mov ebx, dword [ebp - 0x78]
test ebx, ebx
je 0x4030ce
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x78], eax
jmp 0x4031d6
push 0x80000301
push 0
push dword [ebp - 0x54]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x84], eax
push getpeername
push 0
mov eax, dword [0x5d7cec]
test eax, eax
jne 0x40310e
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x88], eax
lea eax, [ebp - 0x88]
push eax
call fcn.00404798
mov dword [ebp - 0x8c], eax
mov ebx, dword [ebp - 0x88]
test ebx, ebx
je 0x40314c
push ebx
call fcn.00425950
add esp, 4
push 0x80000301
push 0
push dword [ebp - 0x8c]
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x90], eax
push dword [ebp - 0x90]
push dword [ebp - 0x84]
mov ebx, dword [ebp + 8]
push dword [ebx]
mov ecx, 3
call fcn.00401146
add esp, 0xc
mov dword [ebp - 0x94], eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x4031a8
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x90]
test ebx, ebx
je 0x4031bb
push ebx
call fcn.00425950
add esp, 4
mov eax, dword [ebp - 0x94]
push eax
mov ebx, dword [ebp - 0x78]
test ebx, ebx
je 0x4031d2
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x78], eax
push dword [ebp - 0x70]
lea eax, [ebp - 0x78]
push eax
push dword [ebp - 0x74]
call fcn.00410e16
call fcn.00404a14
mov dword [ebp - 0x84], eax
mov ebx, dword [ebp - 0x68]
call fcn.0040182f
mov eax, 0xd
cmp eax, ecx
jl 0x40320e
push 1
call fcn.0042593e
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x88], ebx
push dword [ebp - 0x88]
lea eax, [ebp - 0x84]
push eax
call fcn.00411aad
mov dword [ebp - 0x8c], eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x403244
push ebx
call fcn.00425950
add esp, 4
cmp dword [ebp - 0x8c], 0
jne 0x4032e3
mov eax, 0x4c753f
push eax
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x403267
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x64], eax
push 0
push 0
push 0
push getpeername
push 0
push 0x4c7529
push 0x80000301
push 0
push 0x10
push getpeername
push 0
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x40329c
mov eax, 0x4c745c
push eax
push 4
mov ebx, 0x427ca0
call fcn.00425956
add esp, 0x34
mov dword [ebp - 0x84], esp
push 0
push 0xffffffff
mov eax, 1
call fcn.00425944
cmp dword [ebp - 0x84], esp
je 0x4032de
push 6
call fcn.0042593e
add esp, 4
jmp 0x403b68
mov ebx, dword [ebp - 0x68]
call fcn.0040182f
mov eax, 6
cmp eax, ecx
jl 0x403301
push 1
call fcn.0042593e
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x84], ebx
push 0
push 0
push 0
push getpeername
push 0
push 0x4c754b
push getpeername
push 0
mov ebx, dword [ebp - 0x84]
mov eax, dword [ebx]
test eax, eax
jne 0x403336
mov eax, 0x4c745c
push eax
push 3
mov ebx, 0x426f20
call fcn.00425956
add esp, 0x28
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x88]
push eax
mov ebx, dword [ebp - 0x7c]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x403374
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x403370
imul eax, dword [ebx]
jmp 0x403365
mov ecx, eax
test ecx, ecx
je 0x403393
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40338c
push ebx
push eax
call fcn.00425950
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40337a
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x7c], eax
mov ebx, dword [ebp - 0x7c]
call fcn.004017ef
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 4
je 0x40344c
mov eax, 0x4c754d
push eax
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x4033d0
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x64], eax
push 0
push 0
push 0
push getpeername
push 0
push 0x4c7529
push 0x80000301
push 0
push 0x10
push getpeername
push 0
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x403405
mov eax, 0x4c745c
push eax
push 4
mov ebx, 0x427ca0
call fcn.00425956
add esp, 0x34
mov dword [ebp - 0x84], esp
push 0
push 0xffffffff
mov eax, 1
call fcn.00425944
cmp dword [ebp - 0x84], esp
je 0x403447
push 6
call fcn.0042593e
add esp, 4
jmp 0x40362d
mov ebx, dword [ebp - 0x7c]
call fcn.0040182f
mov eax, 0
cmp eax, ecx
jl 0x40346a
push 1
call fcn.0042593e
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x84], ebx
call fcn.0040eb7e
mov dword [ebp - 0x90], eax
fild dword [ebp - 0x90]
fstp qword [ebp - 0x90]
fld qword [ebp - 0x90]
fadd qword [0x4c7559]
fstp qword [ebp - 0x98]
push 0x80000601
push dword [ebp - 0x94]
push dword [ebp - 0x98]
push 1
mov ebx, 0x4269f0
call fcn.00425956
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0xa4], 0
push 0
push dword [ebp - 0xa4]
mov dword [ebp - 0xa8], 0
push 0
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0xa0]
push eax
call fcn.0040d631
mov dword [ebp - 0xac], eax
mov ebx, dword [ebp - 0xa0]
test ebx, ebx
je 0x40352b
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0xa8]
test ebx, ebx
je 0x40353e
push ebx
call fcn.00425950
add esp, 4
lea eax, [ebp - 0xac]
push eax
call fcn.004043ea
mov dword [ebp - 0xb0], eax
mov ebx, dword [ebp - 0xac]
test ebx, ebx
je 0x403563
push ebx
call fcn.00425950
add esp, 4
lea eax, [ebp - 0xb0]
push eax
push dword [ebp - 0x84]
call fcn.00411aad
mov dword [ebp - 0xb4], eax
mov ebx, dword [ebp - 0xb0]
test ebx, ebx
je 0x40358e
push ebx
call fcn.00425950
add esp, 4
cmp dword [ebp - 0xb4], 0
jne 0x40362d
mov eax, 0x4c7561
push eax
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x4035b1
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x64], eax
push 0
push 0
push 0
push getpeername
push 0
push 0x4c7529
push 0x80000301
push 0
push 0x10
push getpeername
push 0
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x4035e6
mov eax, 0x4c745c
push eax
push 4
mov ebx, 0x427ca0
call fcn.00425956
add esp, 0x34
mov dword [ebp - 0x84], esp
push 0
push 0xffffffff
mov eax, 1
call fcn.00425944
cmp dword [ebp - 0x84], esp
je 0x403628
push 6
call fcn.0042593e
add esp, 4
jmp 0x40362d
mov ebx, dword [ebp - 0x7c]
call fcn.0040182f
mov eax, 1
cmp eax, ecx
jl 0x40364b
push 1
call fcn.0042593e
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x84], ebx
call fcn.0040eb7e
mov dword [ebp - 0x90], eax
fild dword [ebp - 0x90]
fstp qword [ebp - 0x90]
fld qword [ebp - 0x90]
fadd qword [0x4c756d]
fstp qword [ebp - 0x98]
push 0x80000601
push dword [ebp - 0x94]
push dword [ebp - 0x98]
push 1
mov ebx, 0x4269f0
call fcn.00425956
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xa0], eax
push getpeername
push 0
mov eax, dword [ebp - 0xa0]
test eax, eax
jne 0x4036d8
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xa4], eax
mov ebx, dword [ebp - 0xa0]
test ebx, ebx
je 0x403704
push ebx
call fcn.00425950
add esp, 4
mov dword [ebp - 0xa8], 0
push 0
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0xa4]
push eax
call fcn.0040d902
mov dword [ebp - 0xac], eax
mov ebx, dword [ebp - 0xa4]
test ebx, ebx
je 0x40373c
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0xa8]
test ebx, ebx
je 0x40374f
push ebx
call fcn.00425950
add esp, 4
lea eax, [ebp - 0xac]
push eax
call fcn.004043ea
mov dword [ebp - 0xb0], eax
mov ebx, dword [ebp - 0xac]
test ebx, ebx
je 0x403774
push ebx
call fcn.00425950
add esp, 4
lea eax, [ebp - 0xb0]
push eax
push dword [ebp - 0x84]
call fcn.00411aad
mov dword [ebp - 0xb4], eax
mov ebx, dword [ebp - 0xb0]
test ebx, ebx
je 0x40379f
push ebx
call fcn.00425950
add esp, 4
cmp dword [ebp - 0xb4], 0
jne 0x403839
mov eax, 0x4c7575
push eax
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x4037c2
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x64], eax
push 0
push 0
push 0
push getpeername
push 0
push 0x4c7529
push 0x80000301
push 0
push 0x10
push getpeername
push 0
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x4037f7
mov eax, 0x4c745c
push eax
push 4
mov ebx, 0x427ca0
call fcn.00425956
add esp, 0x34
mov dword [ebp - 0x84], esp
push 0
push 0xffffffff
mov eax, 1
call fcn.00425944
cmp dword [ebp - 0x84], esp
je 0x403839
push 6
call fcn.0042593e
add esp, 4
mov ebx, dword [ebp - 0x7c]
call fcn.0040182f
mov eax, 2
cmp eax, ecx
jl 0x403857
push 1
call fcn.0042593e
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x84], ebx
call fcn.0040eb7e
mov dword [ebp - 0x90], eax
fild dword [ebp - 0x90]
fstp qword [ebp - 0x90]
fld qword [ebp - 0x90]
fadd qword [0x4c7581]
fstp qword [ebp - 0x98]
push 0x80000601
push dword [ebp - 0x94]
push dword [ebp - 0x98]
push 1
mov ebx, 0x4269f0
call fcn.00425956
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xa0], eax
lea eax, [ebp - 0xa0]
push eax
call fcn.0040e06e
mov dword [ebp - 0xa4], eax
mov ebx, dword [ebp - 0xa0]
test ebx, ebx
je 0x4038f3
push ebx
call fcn.00425950
add esp, 4
lea eax, [ebp - 0xa4]
push eax
push dword [ebp - 0x84]
call fcn.00411aad
mov dword [ebp - 0xa8], eax
mov ebx, dword [ebp - 0xa4]
test ebx, ebx
je 0x40391e
push ebx
call fcn.00425950
add esp, 4
cmp dword [ebp - 0xa8], 0
jne 0x4039b8
mov eax, 0x4c7589
push eax
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x403941
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x64], eax
push 0
push 0
push 0
push getpeername
push 0
push 0x4c7529
push 0x80000301
push 0
push 0x10
push getpeername
push 0
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x403976
mov eax, 0x4c745c
push eax
push 4
mov ebx, 0x427ca0
call fcn.00425956
add esp, 0x34
mov dword [ebp - 0x84], esp
push 0
push 0xffffffff
mov eax, 1
call fcn.00425944
cmp dword [ebp - 0x84], esp
je 0x4039b8
push 6
call fcn.0042593e
add esp, 4
mov ebx, dword [ebp - 0x7c]
call fcn.0040182f
mov eax, 3
cmp eax, ecx
jl 0x4039d6
push 1
call fcn.0042593e
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x84], ebx
call fcn.0040eb7e
mov dword [ebp - 0x90], eax
fild dword [ebp - 0x90]
fstp qword [ebp - 0x90]
fld qword [ebp - 0x90]
fadd qword [0x4c7595]
fstp qword [ebp - 0x98]
push 0x80000601
push dword [ebp - 0x94]
push dword [ebp - 0x98]
push 1
mov ebx, 0x4269f0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x9c], eax
push 0x80000301
push 0
push 0x12d687
push 0x80000301
push 0
push dword [ebp - 0x9c]
push 2
mov ebx, 0x425db0
call fcn.00425956
add esp, 0x1c
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0xa4], eax
lea eax, [ebp - 0xa4]
push eax
call fcn.00404701
mov dword [ebp - 0xa8], eax
mov ebx, dword [ebp - 0xa4]
test ebx, ebx
je 0x403aa3
push ebx
call fcn.00425950
add esp, 4
lea eax, [ebp - 0xa8]
push eax
push dword [ebp - 0x84]
call fcn.00411aad
mov dword [ebp - 0xac], eax
mov ebx, dword [ebp - 0xa8]
test ebx, ebx
je 0x403ace
push ebx
call fcn.00425950
add esp, 4
cmp dword [ebp - 0xac], 0
jne 0x403b68
mov eax, 0x4c759d
push eax
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x403af1
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x64], eax
push 0
push 0
push 0
push getpeername
push 0
push 0x4c7529
push 0x80000301
push 0
push 0x10
push getpeername
push 0
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x403b26
mov eax, 0x4c745c
push eax
push 4
mov ebx, 0x427ca0
call fcn.00425956
add esp, 0x34
mov dword [ebp - 0x84], esp
push 0
push 0xffffffff
mov eax, 1
call fcn.00425944
cmp dword [ebp - 0x84], esp
je 0x403b68
push 6
call fcn.0042593e
add esp, 4
mov ebx, dword [ebp - 0x68]
call fcn.0040182f
mov eax, 0xe
cmp eax, ecx
jl 0x403b86
push 1
call fcn.0042593e
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x84], ebx
push getpeername
push 0
mov ebx, dword [ebp - 0x84]
mov eax, dword [ebx]
test eax, eax
jne 0x403ba9
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x4269f0
call fcn.00425956
add esp, 0x10
mov dword [0x5d7cf0], eax
mov ebx, dword [ebp - 0x68]
call fcn.0040182f
mov eax, 1
cmp eax, ecx
jl 0x403bdf
push 1
call fcn.0042593e
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x84], ebx
push getpeername
push 0
mov ebx, dword [ebp - 0x84]
mov eax, dword [ebx]
test eax, eax
jne 0x403c02
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x88]
push eax
mov ebx, dword [0x5d7cf4]
test ebx, ebx
je 0x403c35
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [0x5d7cf4], eax
mov ebx, dword [ebp - 0x68]
call fcn.0040182f
mov eax, 0xf
cmp eax, ecx
jl 0x403c59
push 1
call fcn.0042593e
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x84], ebx
push getpeername
push 0
mov ebx, dword [ebp - 0x84]
mov eax, dword [ebx]
test eax, eax
jne 0x403c7c
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x88], eax
mov ebx, dword [ebp - 0x68]
call fcn.0040182f
mov eax, 1
cmp eax, ecx
jl 0x403cb3
push 1
call fcn.0042593e
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x8c], ebx
push getpeername
push 0
mov ebx, dword [ebp - 0x8c]
mov eax, dword [ebx]
test eax, eax
jne 0x403cd6
mov eax, 0x4c745c
push eax
push 1
mov ebx, 0x4270b0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x90], eax
push 1
push 1
push 1
lea eax, [ebp - 0x90]
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.0040d631
mov dword [ebp - 0x94], eax
mov ebx, dword [ebp - 0x88]
test ebx, ebx
je 0x403d24
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x90]
test ebx, ebx
je 0x403d37
push ebx
call fcn.00425950
add esp, 4
mov eax, dword [ebp - 0x94]
push eax
mov ebx, dword [0x5d7cf8]
test ebx, ebx
je 0x403d51
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [0x5d7cf8], eax
mov dword [ebp - 0x80], 1
mov ebx, dword [ebp - 0x68]
call fcn.0040182f
mov eax, 0
cmp eax, ecx
jl 0x403d7c
mov ebx, dword [ebp - 0x68]
call fcn.004017ef
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 2
jne 0x403f14
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x5c]
test eax, eax
jne 0x403e62
mov eax, 0x4c74dc
push eax
push 1
mov ebx, 0x4279c0
call fcn.00425956
add esp, 0x10
mov dword [ebp - 0x90], eax
push 0x80000301
push 0
push 1
push getpeername
push 0
mov eax, dword [ebp - 0x90]
test eax, eax
jne 0x403e9d
mov eax, 0x4c745c
push eax
push 2
mov ebx, 0x4261e0
call fcn.00425956
add esp, 0x1c
mov dword [ebp - 0x94], eax
mov ebx, dword [ebp - 0x90]
test ebx, ebx
je 0x403ec9
push ebx
call fcn.00425950
add esp, 4
push 0x4c75a9
push dword [ebp - 0x94]
call fcn.0040103e
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x98], eax
mov ebx, dword [ebp - 0x94]
test ebx, ebx
je 0x403f00
push ebx
call fcn.00425950
add esp, 4
cmp dword [ebp - 0x98], 0
je 0x403f14
mov eax, 1
jmp 0x403f19
mov eax, 0
test eax, eax
je 0x403f89
mov ebx, dword [ebp - 0x68]
call fcn.0040182f
mov eax, 1
cmp eax, ecx
jl 0x403f3f
push 1
call fcn.0042593e
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x84], ebx
mov ebx, dword [ebp - 0x84]
mov eax, dword [ebx]
test eax, eax
je 0x403f6b
push eax
mov ebx, eax
call fcn.004010db
inc eax
push eax
call fcn.0042594a
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x403f7e
push ebx
call fcn.00425950
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
jmp 0x404016
mov eax, 0x4c75ab
push eax
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x403f9f
push ebx
call fcn.00425950
add esp, 4
pop eax
mov dword [ebp - 0x64], eax
push 0
push 0
push 0
push getpeername
push 0
push 0x4c7529
push 0x80000301
push 0
push 0x10
push getpeername
push 0
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x403fd4
mov eax, 0x4c745c
push eax
push 4
mov ebx, 0x427ca0
call fcn.00425956
add esp, 0x34
mov dword [ebp - 0x84], esp
push 0
push 0xffffffff
mov eax, 1
call fcn.00425944
cmp dword [ebp - 0x84], esp
je 0x404016
push 6
call fcn.0042593e
add esp, 4
push 0x80000301
push 0
push dword [0x5d7cdc]
push 1
mov eax, 5
mov ebx, 0x48c2e0
call fcn.0042596e
add esp, 0x10
mov eax, dword [ebp - 0x80]
jmp 0x404071
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x404082
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x24]
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x40409e
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x4040ae
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x4040be
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4040ce
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x4040de
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x4040ee
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x5c]
test ebx, ebx
je 0x4040fe
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x60]
test ebx, ebx
je 0x40410e
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x40411e
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x68]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40413c
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x404138
imul eax, dword [ebx]
jmp 0x40412d
mov ecx, eax
test ecx, ecx
je 0x40415b
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x404154
push ebx
push eax
call fcn.00425950
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x404142
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x404173
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x78]
test ebx, ebx
je 0x404183
push ebx
call fcn.00425950
add esp, 4
mov ebx, dword [ebp - 0x7c]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4041a1
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40419d
imul eax, dword [ebx]
jmp 0x404192
mov ecx, eax
test ecx, ecx
je 0x4041c0
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x4041b9
push ebx
push eax
call fcn.00425950
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4041a7
call fcn.00425950
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x18