Function at 0x4096b8
Capabilities:
Check for software breakpoints
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x80
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
push 0x14
call fcn.0042516b
add esp, 4
mov dword [ebp - 0xc], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 5
rep stosd dword es:[edi], eax
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
push 0x4c
call fcn.0042516b
add esp, 4
mov dword [ebp - 0x18], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x13
rep stosd dword es:[edi], eax
add ebx, 0x38
push ebx
push 0x10
call fcn.0042516b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x497537
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
add ebx, 0xc
push ebx
push 0x1c
call fcn.0042516b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x49765b
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 5
rep stosd dword es:[edi], eax
push 0x14
call fcn.0042516b
add esp, 4
mov dword [ebp - 0x1c], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 5
rep stosd dword es:[edi], eax
add ebx, 4
push ebx
push 0x1c
call fcn.0042516b
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 7
rep stosd dword es:[edi], eax
pop ebx
add ebx, 4
push ebx
push 0x7c
call fcn.0042516b
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x1f
rep stosd dword es:[edi], eax
add ebx, 0x78
push ebx
push 0x80
call fcn.0042516b
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x20
rep stosd dword es:[edi], eax
pop ebx
pop ebx
add ebx, 4
push ebx
push 0x208
call fcn.0042516b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x497663
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 0x80
push ecx
push ebx
push 0x28
call fcn.0042516b
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xa
rep stosd dword es:[edi], eax
push ebx
push 0x10
call fcn.0042516b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x49751f
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40980f
pop ebx
add ebx, 4
push ebx
push 0x208
call fcn.0042516b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x497663
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x80
rep stosd dword es:[edi], eax
push 0x14
call fcn.0042516b
add esp, 4
mov dword [ebp - 0x20], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 5
rep stosd dword es:[edi], eax
add ebx, 4
push ebx
push 0x1c
call fcn.0042516b
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 7
rep stosd dword es:[edi], eax
pop ebx
add ebx, 4
push ebx
push 0x7c
call fcn.0042516b
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x1f
rep stosd dword es:[edi], eax
add ebx, 0x78
push ebx
push 0x80
call fcn.0042516b
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x20
rep stosd dword es:[edi], eax
pop ebx
pop ebx
add ebx, 4
push ebx
push 0x208
call fcn.0042516b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x497663
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 0x80
push ecx
push ebx
push 0x28
call fcn.0042516b
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xa
rep stosd dword es:[edi], eax
push ebx
push 0x10
call fcn.0042516b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x49751f
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40992d
pop ebx
add ebx, 4
push ebx
push 0x208
call fcn.0042516b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x497663
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x80
rep stosd dword es:[edi], eax
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
push 0x28
call fcn.0042516b
add esp, 4
mov dword [ebp - 0x30], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xa
rep stosd dword es:[edi], eax
push 8
call fcn.0042516b
add esp, 4
mov dword [ebp - 0x34], eax
mov edi, eax
mov esi, 0x492ab9
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0042516b
add esp, 4
mov dword [ebp - 0x38], eax
mov edi, eax
mov esi, 0x492ab9
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0042516b
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x492ab9
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x48], 0
mov ebx, dword [0x57a25c]
call fcn.0040335f
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0
jne 0x40e24d
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x40e24a
cmp dword [ebp - 4], 1
jne 0x409aae
mov eax, 0x49760f
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.004087df
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x409a91
push ebx
call fcn.00425165
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409aa5
push ebx
call fcn.00425165
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x409b49
cmp dword [ebp - 4], 2
jne 0x409af9
mov eax, 0x497620
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.004087df
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x409adc
push ebx
call fcn.00425165
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409af0
push ebx
call fcn.00425165
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x409b49
cmp dword [ebp - 4], 3
jne 0x409b44
mov eax, 0x497632
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.004087df
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x409b27
push ebx
call fcn.00425165
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409b3b
push ebx
call fcn.00425165
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x409b49
jmp 0x40e24d
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0x4c], ebx
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0
push 0
push 0
push 1
mov ebx, 0x426ee0
call fcn.00425177
add esp, 0x10
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x409b86
push ebx
call fcn.00425165
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
call fcn.0040e449
mov dword [ebp - 0x4c], eax
push dword [ebp - 8]
push 0x492a81
push dword [ebp - 0x4c]
mov ecx, 3
call fcn.0040311d
add esp, 0xc
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x409bbd
push ebx
call fcn.00425165
add esp, 4
mov dword [ebp - 0x54], esp
push 0
push dword [ebp - 0x10]
push dword [ebp - 0x50]
mov eax, 8
call fcn.0042517d
cmp dword [ebp - 0x54], esp
je 0x409be7
push 6
call fcn.00425171
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x409bf7
push ebx
call fcn.00425165
add esp, 4
mov dword [ebp - 0x4c], esp
push 0
push 0
push 3
push 0
push 1
push accept
push dword [ebp - 0x10]
mov eax, 9
call fcn.0042517d
cmp dword [ebp - 0x4c], esp
je 0x409c37
push 6
call fcn.00425171
add esp, 4
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x40e1ff
mov dword [ebp - 0x4c], esp
push 0
push 0
push 0
push dword [ebp - 0x14]
mov eax, 0xa
call fcn.0042517d
cmp dword [ebp - 0x4c], esp
je 0x409c75
push 6
call fcn.00425171
add esp, 4
mov dword [ebp - 0x4c], esp
push 0
mov eax, 0
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x50]
push eax
push 0x40
mov eax, dword [ebp - 0x18]
push eax
push 0x40
call fcn.0042516b
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x54], 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, 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
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 4
mov esi, ebx
shl ecx, 1
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
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
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0xa
mov esi, ebx
shl ecx, 1
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push dword [ebp - 0x14]
mov eax, 0xb
call fcn.0042517d
cmp dword [ebp - 0x4c], esp
je 0x409db2
push 6
call fcn.00425171
add esp, 4
push eax
mov ebx, dword [ebp - 0x54]
push ebx
mov edi, dword [ebp - 0x58]
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
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
push ebx
push edi
push 2
mov eax, 2
call fcn.0042515f
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x409e83
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x409e81
imul eax, dword [edi]
jmp 0x409e76
mov ecx, eax
cmp ecx, 4
jle 0x409e8d
mov ecx, 4
mov esi, ebx
shl ecx, 1
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 8
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
push ebx
push edi
push 2
mov eax, 2
call fcn.0042515f
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x409ee0
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x409ede
imul eax, dword [edi]
jmp 0x409ed3
mov ecx, eax
cmp ecx, 0xa
jle 0x409eea
mov ecx, 0xa
mov esi, ebx
shl ecx, 1
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x14
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
call fcn.00425165
add esp, 4
pop eax
test eax, eax
je 0x409f2e
mov ebx, dword [ebp - 0x18]
mov dword [ebp - 0x60], ebx
mov ebx, dword [ebp - 0x60]
cmp word [ebx], 0x5a4d
jne 0x409f2e
mov eax, 1
jmp 0x409f30
xor eax, eax
test eax, eax
je 0x40e1ff
mov ebx, dword [ebp - 0x18]
add ebx, 0x48
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x50], esp
push 0
push 0
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
push dword [ebp - 0x14]
mov eax, 0xa
call fcn.0042517d
cmp dword [ebp - 0x50], esp
je 0x409f72
push 6
call fcn.00425171
add esp, 4
mov eax, dword [ebp - 0x20]
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x1c
call fcn.0042516b
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
push eax
push 0x7c
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
mov ecx, 0x1e
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x80
call fcn.0042516b
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
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.00403378
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x40a053
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x28
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push eax
mov ebx, eax
call fcn.00403378
pop eax
sub ebx, eax
add ecx, ebx
push ecx
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 9
rep movsd dword es:[edi], dword [esi]
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x40a009
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push eax
mov ebx, eax
call fcn.00403378
pop eax
sub ebx, eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0042516b
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
push eax
mov ebx, dword [ebp - 0x1c]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 0x78
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
call fcn.00425165
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40a0d0
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40a0cc
imul eax, dword [ebx]
jmp 0x40a0c1
mov ecx, eax
test ecx, ecx
je 0x40a0f8
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
call fcn.00425165
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40a0d6
call fcn.00425165
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
call fcn.00425165
add esp, 4
pop eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x4c], esp
push 0
mov eax, 0
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x50]
push eax
push 0xf8
mov eax, dword [ebp - 0x1c]
push eax
push 0x16f8
call fcn.0042516b
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x54], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
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 dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
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
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
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 dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
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 dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
pop ebx
add ebx, 4
push ebx
mov ecx, 0x80
mov ebx, dword [ebx]
add ebx, 8
push ebx
push ecx
mov ebx, dword [ebx]
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
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 dword [edi], eax
add edi, 4
pop ecx
pop ebx
add ebx, 4
dec ecx
jne 0x40a439
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x80
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
pop ebx
add ebx, 4
push dword [ebp - 0x14]
mov eax, 0xc
call fcn.0042517d
cmp dword [ebp - 0x4c], esp
je 0x40a4f4
push 6
call fcn.00425171
add esp, 4
push eax
mov ebx, dword [ebp - 0x54]
push ebx
mov edi, dword [ebp - 0x58]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
push ebx
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 eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
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
pop ebx
add ebx, 0x14
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
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 eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
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 eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 0x80
pop edi
add edi, 4
pop ebx
add ebx, 0xe0
pop edi
add edi, 4
push edi
mov edi, dword [edi]
mov ecx, 0x80
add edi, 8
push ebx
push edi
push ecx
mov edi, dword [edi]
push ebx
push edi
push 1
mov eax, 2
call fcn.0042515f
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40a830
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40a82e
imul eax, dword [edi]
jmp 0x40a823
mov ecx, eax
cmp ecx, 8
jle 0x40a83a
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 8
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
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 eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ecx
pop edi
pop ebx
add edi, 4
add ebx, 0x28
dec ecx
jne 0x40a7fc
pop edi
add edi, 4
push ebx
push edi
push 4
mov eax, 2
call fcn.0042515f
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40a8e8
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40a8e6
imul eax, dword [edi]
jmp 0x40a8db
mov ecx, eax
cmp ecx, 0x80
jle 0x40a8f5
mov ecx, 0x80
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x200
call fcn.00425165
add esp, 4
pop eax
test eax, eax
je 0x40a931
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x60], ebx
mov ebx, dword [ebp - 0x60]
cmp dword [ebx], 0x4550
jne 0x40a931
mov eax, 1
jmp 0x40a933
xor eax, eax
test eax, eax
je 0x40e1ff
mov ebx, dword [ebp - 0x1c]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 4]
add ebx, 4
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x58], 1
mov ebx, dword [ebp - 0x50]
mov ax, word [ebx]
cwde
cmp eax, 0
jge 0x40a970
push 0xa
call fcn.00425171
add esp, 4
mov dword [ebp - 0x54], eax
lea ebx, [ebp - 0x58]
call fcn.00403378
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0042516b
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x54]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [ebp - 0x4c]
mov ebx, dword [ebx]
call fcn.00403378
pop edx
test ecx, ecx
je 0x40a9d7
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
call fcn.00425165
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40a9b3
pop edx
pop edi
test edx, edx
je 0x40aa29
mov ebx, edi
push edx
push ebx
push 0x28
call fcn.0042516b
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xa
rep stosd dword es:[edi], eax
push ebx
push 0x10
call fcn.0042516b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x49751f
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
pop ebx
pop edx
add ebx, 4
dec edx
jne 0x40a9e1
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
call fcn.00425165
add esp, 4
pop eax
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x1c]
add ebx, 0x10
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 4]
add ebx, 4
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x58], 1
mov ebx, dword [ebp - 0x50]
mov ax, word [ebx]
cwde
cmp eax, 0
jge 0x40aa71
push 0xa
call fcn.00425171
add esp, 4
mov dword [ebp - 0x54], eax
lea ebx, [ebp - 0x58]
call fcn.00403378
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0042516b
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x54]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [ebp - 0x4c]
mov ebx, dword [ebx]
call fcn.00403378
pop edx
test edx, edx
je 0x40aab8
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
call fcn.00425165
add esp, 4
pop eax
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 4]
add ebx, 0x14
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x54], eax
fild dword [ebp - 0x54]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
fsub qword [0x497643]
fstp qword [ebp - 0x5c]
mov dword [ebp - 0x60], esp
push 1
push 0
fld qword [ebp - 0x5c]
call fcn.0040368d
push eax
push dword [ebp - 0x14]
mov eax, 0xa
call fcn.0042517d
cmp dword [ebp - 0x60], esp
je 0x40ab28
push 6
call fcn.00425171
add esp, 4
mov ebx, dword [ebp - 0x1c]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 4]
add ebx, 4
mov dword [ebp - 0x50], ebx
mov ebx, dword [ebp - 0x50]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x58], eax
fild dword [ebp - 0x58]
fstp qword [ebp - 0x58]
fld qword [ebp - 0x58]
fmul qword [0x49764b]
fstp qword [ebp - 0x60]
mov dword [ebp - 0x64], esp
push 0
mov eax, 0
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0x68]
push eax
fld qword [ebp - 0x60]
call fcn.0040368d
push eax
mov ebx, dword [ebp - 0x4c]
mov ebx, dword [ebx]
call fcn.00403378
push ebx
mov dword [ebp - 0x6c], ecx
test ecx, ecx
jne 0x40ab8c
xor eax, eax
jmp 0x40ab98
imul ecx, ecx, 0x28
push ecx
call fcn.0042516b
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x6c]
test ecx, ecx
je 0x40ac3b
push ecx
push edi
push ebx
mov ebx, dword [ebx]
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
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 dword [edi], eax
add edi, 4
pop ebx
pop edi
pop ecx
dec ecx
je 0x40ac3b
add ebx, 4
add edi, 0x28
jmp 0x40abad
push dword [ebp - 0x14]
mov eax, 0xd
call fcn.0042517d
cmp dword [ebp - 0x64], esp
je 0x40ac5a
push 6
call fcn.00425171
add esp, 4
push eax
mov ebx, dword [ebp - 0x70]
push ebx
mov edi, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x6c]
test ecx, ecx
je 0x40ad2a
push ecx
push edi
push ebx
mov edi, dword [edi]
push ebx
push edi
push 1
mov eax, 2
call fcn.0042515f
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40aca1
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40ac9f
imul eax, dword [edi]
jmp 0x40ac94
mov ecx, eax
cmp ecx, 8
jle 0x40acab
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 8
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
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 eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
pop edi
pop ecx
dec ecx
je 0x40ad2a
add ebx, 0x28
add edi, 4
jmp 0x40ac6d
call fcn.00425165
add esp, 4
pop eax
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 4]
add ebx, 4
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov ax, word [ebx]
cwde
xor ecx, ecx
push eax
lea eax, [ebp - 0x24]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40ae46
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0x10]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40ad7d
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40ad90
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40adb8
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40adcb
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x50], ebx
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40adf8
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40ae0b
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x50]
fild dword [ebx]
fstp qword [ebp - 0x5c]
fld qword [ebp - 0x5c]
mov ebx, dword [ebp - 0x54]
fild dword [ebx]
fstp qword [ebp - 0x64]
fsub qword [ebp - 0x64]
fstp qword [ebp - 0x6c]
fld qword [ebp - 0x6c]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
pop eax
pop ebx
pop ecx
jmp 0x40ad4f
add esp, 0xc
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 8]
mov ebx, dword [ebx + 0x78]
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 4]
add ebx, 4
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov ax, word [ebx]
cwde
xor ecx, ecx
push eax
lea eax, [ebp - 0x24]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40affa
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40aea7
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40aeba
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
cmp dword [ebp - 0x28], eax
jl 0x40af92
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40aef5
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40af08
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40af35
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40af48
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x58], ebx
mov ebx, dword [ebp - 0x54]
fild dword [ebx]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
mov ebx, dword [ebp - 0x58]
fild dword [ebx]
fstp qword [ebp - 0x68]
fadd qword [ebp - 0x68]
fstp qword [ebp - 0x70]
fild dword [ebp - 0x28]
fstp qword [ebp - 0x78]
fld qword [ebp - 0x78]
fsub qword [ebp - 0x70]
fcomp qword [0x497653]
fnstsw ax
test ah, 0x41
je 0x40af92
mov eax, 1
jmp 0x40af94
xor eax, eax
test eax, eax
je 0x40aff2
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0x10]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40afbc
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40afcf
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
mov dword [ebp - 0x2c], eax
push dword [ebp - 0x2c]
push dword [ebp - 0x28]
call fcn.0040910e
mov dword [ebp - 0x28], eax
jmp 0x40affa
pop eax
pop ebx
pop ecx
jmp 0x40ae79
add esp, 0xc
cmp dword [ebp - 0x28], 0
jle 0x40e1ff
mov dword [ebp - 0x4c], esp
push 0
push 0
push dword [ebp - 0x28]
push dword [ebp - 0x14]
mov eax, 0xa
call fcn.0042517d
cmp dword [ebp - 0x4c], esp
je 0x40b036
push 6
call fcn.00425171
add esp, 4
mov dword [ebp - 0x4c], esp
push 0
mov eax, 0
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x50]
push eax
push 0x28
push dword [ebp - 0x30]
push dword [ebp - 0x14]
mov eax, 0xe
call fcn.0042517d
cmp dword [ebp - 0x4c], esp
je 0x40b071
push 6
call fcn.00425171
add esp, 4
mov ebx, dword [ebp - 0x30]
add ebx, 0x1c
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x30]
add ebx, 0x1c
mov dword [ebp - 0x50], ebx
push dword [ebp - 0x2c]
mov ebx, dword [ebp - 0x50]
push dword [ebx]
call fcn.0040910e
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x30]
add ebx, 0x14
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x54], 1
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
cmp eax, 0
jge 0x40b0bc
push 0xa
call fcn.00425171
add esp, 4
mov dword [ebp - 0x50], eax
lea ebx, [ebp - 0x54]
call fcn.00403378
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0042516b
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x50]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [ebp - 0x34]
call fcn.00403378
pop edx
test edx, edx
je 0x40b101
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
push dword [ebp - 0x34]
call fcn.00425165
add esp, 4
pop eax
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x30]
add ebx, 0x1c
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x50], esp
push 0
push 0
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
push dword [ebp - 0x14]
mov eax, 0xa
call fcn.0042517d
cmp dword [ebp - 0x50], esp
je 0x40b14a
push 6
call fcn.00425171
add esp, 4
mov ebx, dword [ebp - 0x30]
add ebx, 0x14
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
fild dword [ebx]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
fmul qword [0x497507]
fstp qword [ebp - 0x5c]
mov dword [ebp - 0x60], esp
push 0
mov eax, 0
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x64]
push eax
fld qword [ebp - 0x5c]
call fcn.0040368d
push eax
mov ebx, dword [ebp - 0x34]
call fcn.00403378
push ebx
push dword [ebp - 0x14]
mov eax, 0xf
call fcn.0042517d
cmp dword [ebp - 0x60], esp
je 0x40b1ac
push 6
call fcn.00425171
add esp, 4
mov ebx, dword [ebp - 0x30]
add ebx, 0x24
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x30]
add ebx, 0x24
mov dword [ebp - 0x50], ebx
push dword [ebp - 0x2c]
mov ebx, dword [ebp - 0x50]
push dword [ebx]
call fcn.0040910e
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x30]
add ebx, 0x18
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x54], 1
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
cmp eax, 0
jge 0x40b1f7
push 0xa
call fcn.00425171
add esp, 4
mov dword [ebp - 0x50], eax
lea ebx, [ebp - 0x54]
call fcn.00403378
push ecx
shl ecx, 1
add ecx, 8
push ecx
call fcn.0042516b
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x50]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [ebp - 0x38]
call fcn.00403378
pop edx
test edx, edx
je 0x40b23d
mov ecx, edx
xor eax, eax
shl ecx, 1
rep stosb byte es:[edi], al
push dword [ebp - 0x38]
call fcn.00425165
add esp, 4
pop eax
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x30]
add ebx, 0x24
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x50], esp
push 0
push 0
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
push dword [ebp - 0x14]
mov eax, 0xa
call fcn.0042517d
cmp dword [ebp - 0x50], esp
je 0x40b286
push 6
call fcn.00425171
add esp, 4
mov ebx, dword [ebp - 0x30]
add ebx, 0x18
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
fild dword [ebx]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
fmul qword [0x4975c3]
fstp qword [ebp - 0x5c]
mov dword [ebp - 0x60], esp
push 0
mov eax, 0
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x64]
push eax
fld qword [ebp - 0x5c]
call fcn.0040368d
push eax
mov ebx, dword [ebp - 0x38]
call fcn.00403378
push ebx
push dword [ebp - 0x14]
mov eax, 0x10
call fcn.0042517d
cmp dword [ebp - 0x60], esp
je 0x40b2e8
push 6
call fcn.00425171
add esp, 4
mov ebx, dword [ebp - 0x30]
add ebx, 0x20
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x30]
add ebx, 0x20
mov dword [ebp - 0x50], ebx
push dword [ebp - 0x2c]
mov ebx, dword [ebp - 0x50]
push dword [ebx]
call fcn.0040910e
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x30]
add ebx, 0x18
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x54], 1
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
cmp eax, 0
jge 0x40b333
push 0xa
call fcn.00425171
add esp, 4
mov dword [ebp - 0x50], eax
lea ebx, [ebp - 0x54]
call fcn.00403378
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0042516b
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x50]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [ebp - 0x3c]
call fcn.00403378
pop edx
test edx, edx
je 0x40b378
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
push dword [ebp - 0x3c]
call fcn.00425165
add esp, 4
pop eax
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x30]
add ebx, 0x20
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x50], esp
push 0
push 0
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
push dword [ebp - 0x14]
mov eax, 0xa
call fcn.0042517d
cmp dword [ebp - 0x50], esp
je 0x40b3c1
push 6
call fcn.00425171
add esp, 4
mov ebx, dword [ebp - 0x30]
add ebx, 0x18
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
fild dword [ebx]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
fmul qword [0x497507]
fstp qword [ebp - 0x5c]
mov dword [ebp - 0x60], esp
push 0
mov eax, 0
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x64]
push eax
fld qword [ebp - 0x5c]
call fcn.0040368d
push eax
mov ebx, dword [ebp - 0x3c]
call fcn.00403378
push ebx
push dword [ebp - 0x14]
mov eax, 0xf
call fcn.0042517d
cmp dword [ebp - 0x60], esp
je 0x40b423
push 6
call fcn.00425171
add esp, 4
mov ebx, dword [ebp - 0x30]
add ebx, 0x18
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
xor ecx, ecx
push eax
lea eax, [ebp - 0x24]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40e1fc
push 0x80000301
push 0
push 0x80
push 1
mov ebx, 0x4268d0
call fcn.00425177
add esp, 0x10
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40b47d
push ebx
call fcn.00425165
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40b49e
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b4b1
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x3c]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40b4d6
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b4e9
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x50], ebx
push dword [ebp - 0x2c]
mov ebx, dword [ebp - 0x50]
push dword [ebx]
call fcn.0040910e
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x3c]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40b520
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b533
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x50], esp
push 0
push 0
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
push dword [ebp - 0x14]
mov eax, 0xa
call fcn.0042517d
cmp dword [ebp - 0x50], esp
je 0x40b56c
push 6
call fcn.00425171
add esp, 4
mov dword [ebp - 0x4c], esp
push 0
mov eax, 0
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x50]
push eax
push 0x80
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x40b58f
add eax, 8
push eax
push dword [ebp - 0x14]
mov eax, 0x11
call fcn.0042517d
cmp dword [ebp - 0x4c], esp
je 0x40b5af
push 6
call fcn.00425171
add esp, 4
cmp dword [ebp - 4], 1
jne 0x40b62d
mov ebx, dword [ebp - 0x40]
call fcn.00403378
mov eax, 0
cmp eax, ecx
jl 0x40b5d7
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x5a
jne 0x40b61b
mov ebx, dword [ebp - 0x40]
call fcn.00403378
mov eax, 1
cmp eax, ecx
jl 0x40b606
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x77
jne 0x40b61b
xor eax, eax
jmp 0x40b620
mov eax, 1
test eax, eax
je 0x40b62d
jmp 0x40e1f4
mov ebx, dword [ebp - 0x34]
call fcn.00403378
push ebx
push ecx
mov ebx, dword [ebp - 0x38]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40b654
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b667
push 1
call fcn.00425171
add esp, 4
shl eax, 1
add ebx, eax
mov dword [ebp - 0x4c], ebx
push 1
mov ebx, dword [ebp - 0x4c]
mov ax, word [ebx]
cwde
push eax
call fcn.00408a4b
dec eax
jns 0x40b690
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b6a3
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jne 0x40b6c2
jmp 0x40e1f4
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 4]
add ebx, 4
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov ax, word [ebx]
cwde
xor ecx, ecx
push eax
lea eax, [ebp - 0x24]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40b859
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40b70c
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b71f
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
cmp dword [ebp - 0x44], eax
jl 0x40b7f7
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40b75a
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b76d
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40b79a
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b7ad
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x58], ebx
mov ebx, dword [ebp - 0x54]
fild dword [ebx]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
mov ebx, dword [ebp - 0x58]
fild dword [ebx]
fstp qword [ebp - 0x68]
fadd qword [ebp - 0x68]
fstp qword [ebp - 0x70]
fild dword [ebp - 0x44]
fstp qword [ebp - 0x78]
fld qword [ebp - 0x78]
fsub qword [ebp - 0x70]
fcomp qword [0x497653]
fnstsw ax
test ah, 0x41
je 0x40b7f7
mov eax, 1
jmp 0x40b7f9
xor eax, eax
test eax, eax
je 0x40b851
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0x10]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40b821
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b834
push 1
call fcn.00425171
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
push dword [ebp - 0x44]
call fcn.0040910e
mov dword [ebp - 0x44], eax
jmp 0x40b859
pop eax
pop ebx
pop ecx
jmp 0x40b6de
add esp, 0xc
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 4]
add ebx, 4
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov ax, word [ebx]
cwde
cmp dword [ebp - 0x24], eax
jle 0x40b87d
jmp 0x40e1f4
push 0x80000301
push 0
push 0x20
push 1
mov ebx, 0x4268d0
call fcn.00425177
add esp, 0x10
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x40b8b2
push ebx
call fcn.00425165
add esp, 4
pop eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x4c], esp
push 0
push 0
push dword [ebp - 0x44]
push dword [ebp - 0x14]
mov eax, 0xa
call fcn.0042517d
cmp dword [ebp - 0x4c], esp
je 0x40b8e5
push 6
call fcn.00425171
add esp, 4
mov dword [ebp - 0x4c], esp
push 0
mov eax, 0
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x50]
push eax
push 0x20
mov eax, dword [ebp - 0x48]
test eax, eax
je 0x40b908
add eax, 8
push eax
push dword [ebp - 0x14]
mov eax, 0x11
call fcn.0042517d
cmp dword [ebp - 0x4c], esp
je 0x40b928
push 6
call fcn.00425171
add esp, 4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0
cmp eax, ecx
jl 0x40b946
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xb8
je 0x40b95c
jmp 0x40e1f4
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x4c], ebx
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x40]
test eax, eax
jne 0x40b978
mov eax, 0x492ab9
push eax
push 1
mov ebx, 0x426c10
call fcn.00425177
add esp, 0x10
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 0x4c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40b9a4
push ebx
call fcn.00425165
add esp, 4
pop eax
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0xc]
add ebx, 8
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40b9f0
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40ba24
and eax, 0xff
jmp 0x40ba6f
cmp ecx, 0x80000201
jne 0x40ba2f
cwde
jmp 0x40ba6f
cmp ecx, 0x80000301
je 0x40ba6f
cmp ecx, 0x80000401
je 0x40ba6f
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40ba5f
cmp ecx, 0x80000601
je 0x40ba64
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40ba6a
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [0x57a260]
add ebx, 4
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp dword [ebx], 5
jne 0x40baab
mov ebx, dword [0x57a260]
add ebx, 8
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp dword [ebx], 0
jne 0x40baab
mov eax, 1
jmp 0x40baad
xor eax, eax
test eax, eax
je 0x40c1a3
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 9
cmp eax, ecx
jl 0x40bad3
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xcd
jne 0x40bb1a
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xa
cmp eax, ecx
jl 0x40bb02
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x2e
jne 0x40bb1a
mov eax, 1
jmp 0x40bb1c
xor eax, eax
test eax, eax
je 0x40c19e
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xb
cmp eax, ecx
jl 0x40bb42
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40bcc6
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 0xd
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40bb87
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40bbbb
and eax, 0xff
jmp 0x40bc06
cmp ecx, 0x80000201
jne 0x40bbc6
cwde
jmp 0x40bc06
cmp ecx, 0x80000301
je 0x40bc06
cmp ecx, 0x80000401
je 0x40bc06
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40bbf6
cmp ecx, 0x80000601
je 0x40bbfb
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40bc01
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40bc52
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40bcae
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xb
cmp eax, ecx
jl 0x40bce4
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x40bdb0
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40bd3c
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40bd98
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xb
cmp eax, ecx
jl 0x40bdce
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xe9
jne 0x40c19e
push 0x10
push dword [ebp - 0x44]
call fcn.00408a4b
mov dword [ebp - 0x44], eax
push 0x80000301
push 0
push 0xd
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40be1a
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x4c], ecx
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x54]
cmp ecx, 0x80000101
jne 0x40be4e
and eax, 0xff
jmp 0x40be99
cmp ecx, 0x80000201
jne 0x40be59
cwde
jmp 0x40be99
cmp ecx, 0x80000301
je 0x40be99
cmp ecx, 0x80000401
je 0x40be99
mov dword [ebp - 0x5c], eax
cmp ecx, 0x80000501
je 0x40be89
cmp ecx, 0x80000601
je 0x40be8e
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x5c]
jmp 0x40be94
mov dword [ebp - 0x58], edx
fld qword [ebp - 0x5c]
call fcn.0040368d
push eax
push dword [ebp - 0x44]
call fcn.00408a4b
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x4c], esp
push 0
push 0
push dword [ebp - 0x44]
push dword [ebp - 0x14]
mov eax, 0xa
call fcn.0042517d
cmp dword [ebp - 0x4c], esp
je 0x40bed4
push 6
call fcn.00425171
add esp, 4
mov dword [ebp - 0x4c], esp
push 0
mov eax, 0
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x50]
push eax
push 3
mov eax, dword [ebp - 0x48]
test eax, eax
je 0x40bef7
add eax, 8
push eax
push dword [ebp - 0x14]
mov eax, 0x11
call fcn.0042517d
cmp dword [ebp - 0x4c], esp
je 0x40bf17
push 6
call fcn.00425171
add esp, 4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0
cmp eax, ecx
jl 0x40bf35
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40c0b9
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40bf7a
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40bfae
and eax, 0xff
jmp 0x40bff9
cmp ecx, 0x80000201
jne 0x40bfb9
cwde
jmp 0x40bff9
cmp ecx, 0x80000301
je 0x40bff9
cmp ecx, 0x80000401
je 0x40bff9
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40bfe9
cmp ecx, 0x80000601
je 0x40bfee
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40bff4
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40c045
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40c0a1
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0
cmp eax, ecx
jl 0x40c0d7
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x40c19e
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40c12f
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40c18b
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
jmp 0x40e1f4
mov ebx, dword [0x57a260]
add ebx, 0x1c
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp dword [ebx], 0
je 0x40dab1
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 5
cmp eax, ecx
jl 0x40c1eb
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x40c261
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 6
cmp eax, ecx
jl 0x40c21a
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xff
jne 0x40c261
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 8
cmp eax, ecx
jl 0x40c249
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0xc0
jne 0x40c261
mov eax, 1
jmp 0x40c263
xor eax, eax
test eax, eax
je 0x40c4f2
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xc
cmp eax, ecx
jl 0x40c289
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40c40d
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40c2ce
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40c302
and eax, 0xff
jmp 0x40c34d
cmp ecx, 0x80000201
jne 0x40c30d
cwde
jmp 0x40c34d
cmp ecx, 0x80000301
je 0x40c34d
cmp ecx, 0x80000401
je 0x40c34d
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40c33d
cmp ecx, 0x80000601
je 0x40c342
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40c348
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40c399
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40c3f5
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xc
cmp eax, ecx
jl 0x40c42b
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x40c4f2
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40c483
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40c4df
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 5
cmp eax, ecx
jl 0x40c510
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x33
jne 0x40c586
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 7
cmp eax, ecx
jl 0x40c53f
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x8d
jne 0x40c586
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xb
cmp eax, ecx
jl 0x40c56e
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x40c586
mov eax, 1
jmp 0x40c588
xor eax, eax
test eax, eax
je 0x40c9f9
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x12
cmp eax, ecx
jl 0x40c5ae
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x40c5f2
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x15
cmp eax, ecx
jl 0x40c5dd
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc3
je 0x40c5f2
xor eax, eax
jmp 0x40c5f7
mov eax, 1
test eax, eax
je 0x40c6ba
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40c646
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40c6a2
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x12
cmp eax, ecx
jl 0x40c6d8
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40c85c
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 0x14
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40c71d
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40c751
and eax, 0xff
jmp 0x40c79c
cmp ecx, 0x80000201
jne 0x40c75c
cwde
jmp 0x40c79c
cmp ecx, 0x80000301
je 0x40c79c
cmp ecx, 0x80000401
je 0x40c79c
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40c78c
cmp ecx, 0x80000601
je 0x40c791
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40c797
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40c7e8
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40c844
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x15
cmp eax, ecx
jl 0x40c87a
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40c9f9
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40c8bf
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40c8f3
and eax, 0xff
jmp 0x40c93e
cmp ecx, 0x80000201
jne 0x40c8fe
cwde
jmp 0x40c93e
cmp ecx, 0x80000301
je 0x40c93e
cmp ecx, 0x80000401
je 0x40c93e
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40c92e
cmp ecx, 0x80000601
je 0x40c933
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40c939
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40c98a
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40c9e6
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 5
cmp eax, ecx
jl 0x40ca17
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x8d
jne 0x40ca8d
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 9
cmp eax, ecx
jl 0x40ca46
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x33
jne 0x40ca8d
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xb
cmp eax, ecx
jl 0x40ca75
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x40ca8d
mov eax, 1
jmp 0x40ca8f
xor eax, eax
test eax, eax
je 0x40cf00
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x12
cmp eax, ecx
jl 0x40cab5
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x40caf9
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x15
cmp eax, ecx
jl 0x40cae4
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc3
je 0x40caf9
xor eax, eax
jmp 0x40cafe
mov eax, 1
test eax, eax
je 0x40cbc1
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40cb4d
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40cba9
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x12
cmp eax, ecx
jl 0x40cbdf
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40cd63
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 0x14
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40cc24
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40cc58
and eax, 0xff
jmp 0x40cca3
cmp ecx, 0x80000201
jne 0x40cc63
cwde
jmp 0x40cca3
cmp ecx, 0x80000301
je 0x40cca3
cmp ecx, 0x80000401
je 0x40cca3
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40cc93
cmp ecx, 0x80000601
je 0x40cc98
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40cc9e
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40ccef
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40cd4b
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x15
cmp eax, ecx
jl 0x40cd81
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40cf00
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40cdc6
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40cdfa
and eax, 0xff
jmp 0x40ce45
cmp ecx, 0x80000201
jne 0x40ce05
cwde
jmp 0x40ce45
cmp ecx, 0x80000301
je 0x40ce45
cmp ecx, 0x80000401
je 0x40ce45
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40ce35
cmp ecx, 0x80000601
je 0x40ce3a
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40ce40
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40ce91
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40ceed
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 5
cmp eax, ecx
jl 0x40cf1e
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xb9
jne 0x40cf94
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xa
cmp eax, ecx
jl 0x40cf4d
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x8d
jne 0x40cf94
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xe
cmp eax, ecx
jl 0x40cf7c
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x40cf94
mov eax, 1
jmp 0x40cf96
xor eax, eax
test eax, eax
je 0x40d4d6
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 7
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40cfd2
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40d006
and eax, 0xff
jmp 0x40d051
cmp ecx, 0x80000201
jne 0x40d011
cwde
jmp 0x40d051
cmp ecx, 0x80000301
je 0x40d051
cmp ecx, 0x80000401
je 0x40d051
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40d041
cmp ecx, 0x80000601
je 0x40d046
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40d04c
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x15
cmp eax, ecx
jl 0x40d074
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x40d0b8
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x18
cmp eax, ecx
jl 0x40d0a3
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc3
je 0x40d0b8
xor eax, eax
jmp 0x40d0bd
mov eax, 1
test eax, eax
je 0x40d180
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40d10c
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40d168
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x15
cmp eax, ecx
jl 0x40d19e
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40d322
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40d1e3
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40d217
and eax, 0xff
jmp 0x40d262
cmp ecx, 0x80000201
jne 0x40d222
cwde
jmp 0x40d262
cmp ecx, 0x80000301
je 0x40d262
cmp ecx, 0x80000401
je 0x40d262
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40d252
cmp ecx, 0x80000601
je 0x40d257
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40d25d
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40d2ae
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40d30a
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x18
cmp eax, ecx
jl 0x40d340
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40d4c4
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 0x1a
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40d385
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40d3b9
and eax, 0xff
jmp 0x40d404
cmp ecx, 0x80000201
jne 0x40d3c4
cwde
jmp 0x40d404
cmp ecx, 0x80000301
je 0x40d404
cmp ecx, 0x80000401
je 0x40d404
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40d3f4
cmp ecx, 0x80000601
je 0x40d3f9
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40d3ff
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40d450
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40d4ac
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 5
cmp eax, ecx
jl 0x40d4f4
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x8d
jne 0x40d56a
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 9
cmp eax, ecx
jl 0x40d523
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xb9
jne 0x40d56a
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xe
cmp eax, ecx
jl 0x40d552
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x40d56a
mov eax, 1
jmp 0x40d56c
xor eax, eax
test eax, eax
je 0x40daac
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 0xb
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40d5a8
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40d5dc
and eax, 0xff
jmp 0x40d627
cmp ecx, 0x80000201
jne 0x40d5e7
cwde
jmp 0x40d627
cmp ecx, 0x80000301
je 0x40d627
cmp ecx, 0x80000401
je 0x40d627
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40d617
cmp ecx, 0x80000601
je 0x40d61c
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40d622
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x15
cmp eax, ecx
jl 0x40d64a
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x40d68e
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x18
cmp eax, ecx
jl 0x40d679
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc3
je 0x40d68e
xor eax, eax
jmp 0x40d693
mov eax, 1
test eax, eax
je 0x40d756
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40d6e2
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40d73e
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x15
cmp eax, ecx
jl 0x40d774
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40d8f8
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40d7b9
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40d7ed
and eax, 0xff
jmp 0x40d838
cmp ecx, 0x80000201
jne 0x40d7f8
cwde
jmp 0x40d838
cmp ecx, 0x80000301
je 0x40d838
cmp ecx, 0x80000401
je 0x40d838
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40d828
cmp ecx, 0x80000601
je 0x40d82d
fld dword [ebp - 0x60]
jmp 0x40d833
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40d884
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40d8e0
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0x18
cmp eax, ecx
jl 0x40d916
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40da9a
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 0x1a
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40d95b
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40d98f
and eax, 0xff
jmp 0x40d9da
cmp ecx, 0x80000201
jne 0x40d99a
cwde
jmp 0x40d9da
cmp ecx, 0x80000301
je 0x40d9da
cmp ecx, 0x80000401
je 0x40d9da
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40da26
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], 0
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 5
cmp eax, ecx
jl 0x40dacf
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xe8
jne 0x40de8f
push 0x80000301
push 0
push 7
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40db0b
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x4c], ecx
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x54]
cmp ecx, 0x80000101
jne 0x40db3f
and eax, 0xff
jmp 0x40db8a
cmp ecx, 0x80000201
jne 0x40db4a
cwde
jmp 0x40db8a
cmp ecx, 0x80000301
je 0x40db8a
cmp ecx, 0x80000401
je 0x40db8a
mov dword [ebp - 0x5c], eax
cmp ecx, 0x80000501
je 0x40db7a
cmp ecx, 0x80000601
je 0x40db7f
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x5c]
jmp 0x40db85
mov dword [ebp - 0x58], edx
fld qword [ebp - 0x5c]
call fcn.0040368d
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jle 0x40dba8
cmp dword [ebp - 0x44], 0xa
jge 0x40dba8
mov eax, 1
jmp 0x40dbaa
xor eax, eax
test eax, eax
je 0x40de8a
push 0xd
push dword [ebp - 0x44]
call fcn.00408a4b
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x48]
call fcn.00403378
push ebx
push ecx
mov eax, dword [ebp - 0x44]
dec eax
jns 0x40dbdf
push 4
call fcn.00425171
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40dbf2
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xf
jne 0x40de8a
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xa
cmp eax, ecx
jl 0x40dc21
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40dda5
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 0xc
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40dc66
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40dc9a
and eax, 0xff
jmp 0x40dce5
cmp ecx, 0x80000201
jne 0x40dca5
cwde
jmp 0x40dce5
cmp ecx, 0x80000301
je 0x40dce5
cmp ecx, 0x80000401
je 0x40dce5
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40dcd5
cmp ecx, 0x80000601
je 0x40dcda
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40dce0
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40dd31
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40dd8d
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xa
cmp eax, ecx
jl 0x40ddc3
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x40de8a
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40de1b
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40de77
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 5
cmp eax, ecx
jl 0x40dead
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xba
jne 0x40def4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xa
cmp eax, ecx
jl 0x40dedc
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xff
jne 0x40def4
mov eax, 1
jmp 0x40def6
xor eax, eax
test eax, eax
je 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xb
cmp eax, ecx
jl 0x40df1c
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x12
je 0x40df60
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xb
cmp eax, ecx
jl 0x40df4b
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xd2
je 0x40df60
xor eax, eax
jmp 0x40df65
mov eax, 1
test eax, eax
je 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xc
cmp eax, ecx
jl 0x40df8b
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40e10f
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x40dfd0
mov eax, 0x492ab9
push eax
push 3
mov ebx, 0x426560
call fcn.00425177
add esp, 0x28
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x58]
cmp ecx, 0x80000101
jne 0x40e004
and eax, 0xff
jmp 0x40e04f
cmp ecx, 0x80000201
jne 0x40e00f
cwde
jmp 0x40e04f
cmp ecx, 0x80000301
je 0x40e04f
cmp ecx, 0x80000401
je 0x40e04f
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40e03f
cmp ecx, 0x80000601
je 0x40e044
push 2
call fcn.00425171
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40e04a
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.0040368d
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40e09b
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40e0f7
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
mov ebx, dword [ebp - 0x48]
call fcn.00403378
mov eax, 0xc
cmp eax, ecx
jl 0x40e12d
push 1
call fcn.00425171
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x40e1f4
push 0x57a25c
push 4
mov eax, 2
call fcn.0042515f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x57a25c]
mov dword [ebp - 0x50], ebx
call fcn.00403378
mov dword [ebp - 0x54], ecx
mov edi, dword [ebp - 0x50]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40e185
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x54]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x50]
call fcn.00425183
add esp, 8
mov dword [0x57a25c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x54]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x4c]
push edi
push eax
push 0x14
call fcn.0042516b
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40e1e1
push eax
mov ebx, eax
call fcn.004030b2
inc eax
push eax
call fcn.0042516b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40e1f4
pop eax
pop ebx
pop ecx
jmp 0x40b43a
add esp, 0xc
mov dword [ebp - 0x4c], esp
push dword [ebp - 0x14]
mov eax, 0x12
call fcn.0042517d
cmp dword [ebp - 0x4c], esp
je 0x40e221
push 6
call fcn.00425171
add esp, 4
mov dword [ebp - 0x4c], esp
push dword [ebp - 0x10]
mov eax, 0x13
call fcn.0042517d
cmp dword [ebp - 0x4c], esp
je 0x40e243
push 6
call fcn.00425171
add esp, 4
pop ebx
pop ecx
jmp 0x409a55
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40e25d
push ebx
call fcn.00425165
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40e274
push ebx
call fcn.00425165
add esp, 4
pop ebx
call fcn.00425165
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x40e28d
push ebx
call fcn.00425165
add esp, 4
mov ebx, dword [ebp - 0x18]
push ebx
add ebx, 0x38
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
call fcn.00425165
add esp, 4
mov ebx, dword [ebp - 0x1c]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 0x78
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
call fcn.00425165
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40e30e
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40e30a
imul eax, dword [ebx]
jmp 0x40e2ff
mov ecx, eax
test ecx, ecx
je 0x40e336
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
call fcn.00425165
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40e314
call fcn.00425165
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
call fcn.00425165
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 0x78
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
call fcn.00425165
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40e3ac
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40e3a8
imul eax, dword [ebx]
jmp 0x40e39d
mov ecx, eax
test ecx, ecx
je 0x40e3d4
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
call fcn.00425165
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40e3b2
call fcn.00425165
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00425165
add esp, 4
pop ebx
call fcn.00425165
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
call fcn.00425165
add esp, 4
mov ebx, dword [ebp - 0x34]
push ebx
call fcn.00425165
add esp, 4
mov ebx, dword [ebp - 0x38]
push ebx
call fcn.00425165
add esp, 4
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.00425165
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40e435
push ebx
call fcn.00425165
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x40e445
push ebx
call fcn.00425165
add esp, 4
mov esp, ebp
pop ebp
ret