Function at 0x407419
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.00423451
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.00423451
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.00423451
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x497186
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.00423451
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4972ac
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.00423451
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.00423451
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.00423451
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.00423451
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.00423451
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4972b4
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.00423451
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.00423451
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x49716e
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 0x407570
pop ebx
add ebx, 4
push ebx
push 0x208
call fcn.00423451
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4972b4
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.00423451
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.00423451
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.00423451
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.00423451
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.00423451
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4972b4
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.00423451
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.00423451
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x49716e
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 0x40768e
pop ebx
add ebx, 4
push ebx
push 0x208
call fcn.00423451
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4972b4
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.00423451
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.00423451
add esp, 4
mov dword [ebp - 0x34], eax
mov edi, eax
mov esi, 0x4926a4
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.00423451
add esp, 4
mov dword [ebp - 0x38], eax
mov edi, eax
mov esi, 0x4926a4
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.00423451
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x4926a4
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 [0x5b95f8]
call fcn.004070c6
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0
jne 0x40bfae
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x40bfab
cmp dword [ebp - 4], 1
jne 0x40780f
mov eax, 0x497260
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.0040657a
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x4077f2
push ebx
call fcn.0042344b
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407806
push ebx
call fcn.0042344b
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4078aa
cmp dword [ebp - 4], 2
jne 0x40785a
mov eax, 0x497271
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.0040657a
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x40783d
push ebx
call fcn.0042344b
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407851
push ebx
call fcn.0042344b
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4078aa
cmp dword [ebp - 4], 3
jne 0x4078a5
mov eax, 0x497283
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.0040657a
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x407888
push ebx
call fcn.0042344b
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40789c
push ebx
call fcn.0042344b
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4078aa
jmp 0x40bfae
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, 0x4251b0
call fcn.0042345d
add esp, 0x10
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4078e7
push ebx
call fcn.0042344b
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
call fcn.0040c1aa
mov dword [ebp - 0x4c], eax
push dword [ebp - 8]
push 0x4971fe
push dword [ebp - 0x4c]
mov ecx, 3
call fcn.00401336
add esp, 0xc
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x40791e
push ebx
call fcn.0042344b
add esp, 4
mov dword [ebp - 0x54], esp
push 0
push dword [ebp - 0x10]
push dword [ebp - 0x50]
mov eax, 8
call fcn.00423463
cmp dword [ebp - 0x54], esp
je 0x407948
push 6
call fcn.00423457
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x407958
push ebx
call fcn.0042344b
add esp, 4
mov dword [ebp - 0x4c], esp
push 0
push 0
push 3
push 0
push 1
push closesocket
push dword [ebp - 0x10]
mov eax, 9
call fcn.00423463
cmp dword [ebp - 0x4c], esp
je 0x407998
push 6
call fcn.00423457
add esp, 4
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x40bf60
mov dword [ebp - 0x4c], esp
push 0
push 0
push 0
push dword [ebp - 0x14]
mov eax, 0xa
call fcn.00423463
cmp dword [ebp - 0x4c], esp
je 0x4079d6
push 6
call fcn.00423457
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.00423451
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.00423463
cmp dword [ebp - 0x4c], esp
je 0x407b13
push 6
call fcn.00423457
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.00423445
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 0x407be4
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x407be2
imul eax, dword [edi]
jmp 0x407bd7
mov ecx, eax
cmp ecx, 4
jle 0x407bee
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.00423445
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 0x407c41
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x407c3f
imul eax, dword [edi]
jmp 0x407c34
mov ecx, eax
cmp ecx, 0xa
jle 0x407c4b
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.0042344b
add esp, 4
pop eax
test eax, eax
je 0x407c8f
mov ebx, dword [ebp - 0x18]
mov dword [ebp - 0x60], ebx
mov ebx, dword [ebp - 0x60]
cmp word [ebx], 0x5a4d
jne 0x407c8f
mov eax, 1
jmp 0x407c91
xor eax, eax
test eax, eax
je 0x40bf60
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.00423463
cmp dword [ebp - 0x50], esp
je 0x407cd3
push 6
call fcn.00423457
add esp, 4
mov eax, dword [ebp - 0x20]
push eax
push 0x14
call fcn.00423451
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.00423451
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.00423451
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.00423451
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.00401392
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.00423451
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 0x407db4
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x28
call fcn.00423451
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.00401392
pop eax
sub ebx, eax
add ecx, ebx
push ecx
call fcn.00423451
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 0x407d6a
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.00401392
pop eax
sub ebx, eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.00423451
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.0042344b
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.0042344b
add esp, 4
pop ebx
call fcn.0042344b
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 0x407e31
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x407e2d
imul eax, dword [ebx]
jmp 0x407e22
mov ecx, eax
test ecx, ecx
je 0x407e59
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042344b
add esp, 4
pop ebx
call fcn.0042344b
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x407e37
call fcn.0042344b
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042344b
add esp, 4
pop ebx
call fcn.0042344b
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.00423451
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 0x40819a
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.00423463
cmp dword [ebp - 0x4c], esp
je 0x408255
push 6
call fcn.00423457
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.00423445
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 0x408591
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40858f
imul eax, dword [edi]
jmp 0x408584
mov ecx, eax
cmp ecx, 8
jle 0x40859b
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 0x40855d
pop edi
add edi, 4
push ebx
push edi
push 4
mov eax, 2
call fcn.00423445
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 0x408649
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x408647
imul eax, dword [edi]
jmp 0x40863c
mov ecx, eax
cmp ecx, 0x80
jle 0x408656
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.0042344b
add esp, 4
pop eax
test eax, eax
je 0x408692
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x60], ebx
mov ebx, dword [ebp - 0x60]
cmp dword [ebx], 0x4550
jne 0x408692
mov eax, 1
jmp 0x408694
xor eax, eax
test eax, eax
je 0x40bf60
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 0x4086d1
push 0xa
call fcn.00423457
add esp, 4
mov dword [ebp - 0x54], eax
lea ebx, [ebp - 0x58]
call fcn.00401392
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.00423451
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.00401392
pop edx
test ecx, ecx
je 0x408738
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042344b
add esp, 4
pop ebx
call fcn.0042344b
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x408714
pop edx
pop edi
test edx, edx
je 0x40878a
mov ebx, edi
push edx
push ebx
push 0x28
call fcn.00423451
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.00423451
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x49716e
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 0x408742
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
call fcn.0042344b
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 0x4087d2
push 0xa
call fcn.00423457
add esp, 4
mov dword [ebp - 0x54], eax
lea ebx, [ebp - 0x58]
call fcn.00401392
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.00423451
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.00401392
pop edx
test edx, edx
je 0x408819
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
call fcn.0042344b
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 [0x497294]
fstp qword [ebp - 0x5c]
mov dword [ebp - 0x60], esp
push 1
push 0
fld qword [ebp - 0x5c]
call fcn.004012a4
push eax
push dword [ebp - 0x14]
mov eax, 0xa
call fcn.00423463
cmp dword [ebp - 0x60], esp
je 0x408889
push 6
call fcn.00423457
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 [0x49729c]
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.004012a4
push eax
mov ebx, dword [ebp - 0x4c]
mov ebx, dword [ebx]
call fcn.00401392
push ebx
mov dword [ebp - 0x6c], ecx
test ecx, ecx
jne 0x4088ed
xor eax, eax
jmp 0x4088f9
imul ecx, ecx, 0x28
push ecx
call fcn.00423451
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 0x40899c
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 0x40899c
add ebx, 4
add edi, 0x28
jmp 0x40890e
push dword [ebp - 0x14]
mov eax, 0xd
call fcn.00423463
cmp dword [ebp - 0x64], esp
je 0x4089bb
push 6
call fcn.00423457
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 0x408a8b
push ecx
push edi
push ebx
mov edi, dword [edi]
push ebx
push edi
push 1
mov eax, 2
call fcn.00423445
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 0x408a02
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x408a00
imul eax, dword [edi]
jmp 0x4089f5
mov ecx, eax
cmp ecx, 8
jle 0x408a0c
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 0x408a8b
add ebx, 0x28
add edi, 4
jmp 0x4089ce
call fcn.0042344b
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 0x408ba7
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0x10]
call fcn.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x408ade
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408af1
push 1
call fcn.00423457
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.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x408b19
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408b2c
push 1
call fcn.00423457
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.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x408b59
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408b6c
push 1
call fcn.00423457
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.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
pop eax
pop ebx
pop ecx
jmp 0x408ab0
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 0x408d5b
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x408c08
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408c1b
push 1
call fcn.00423457
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 0x408cf3
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x408c56
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408c69
push 1
call fcn.00423457
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.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x408c96
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408ca9
push 1
call fcn.00423457
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 [0x4972a4]
fnstsw ax
test ah, 0x41
je 0x408cf3
mov eax, 1
jmp 0x408cf5
xor eax, eax
test eax, eax
je 0x408d53
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0x10]
call fcn.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x408d1d
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408d30
push 1
call fcn.00423457
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.00406ea9
mov dword [ebp - 0x28], eax
jmp 0x408d5b
pop eax
pop ebx
pop ecx
jmp 0x408bda
add esp, 0xc
cmp dword [ebp - 0x28], 0
jle 0x40bf60
mov dword [ebp - 0x4c], esp
push 0
push 0
push dword [ebp - 0x28]
push dword [ebp - 0x14]
mov eax, 0xa
call fcn.00423463
cmp dword [ebp - 0x4c], esp
je 0x408d97
push 6
call fcn.00423457
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.00423463
cmp dword [ebp - 0x4c], esp
je 0x408dd2
push 6
call fcn.00423457
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.00406ea9
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 0x408e1d
push 0xa
call fcn.00423457
add esp, 4
mov dword [ebp - 0x50], eax
lea ebx, [ebp - 0x54]
call fcn.00401392
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.00423451
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.00401392
pop edx
test edx, edx
je 0x408e62
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
push dword [ebp - 0x34]
call fcn.0042344b
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.00423463
cmp dword [ebp - 0x50], esp
je 0x408eab
push 6
call fcn.00423457
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 [0x497156]
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.004012a4
push eax
mov ebx, dword [ebp - 0x34]
call fcn.00401392
push ebx
push dword [ebp - 0x14]
mov eax, 0xf
call fcn.00423463
cmp dword [ebp - 0x60], esp
je 0x408f0d
push 6
call fcn.00423457
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.00406ea9
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 0x408f58
push 0xa
call fcn.00423457
add esp, 4
mov dword [ebp - 0x50], eax
lea ebx, [ebp - 0x54]
call fcn.00401392
push ecx
shl ecx, 1
add ecx, 8
push ecx
call fcn.00423451
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.00401392
pop edx
test edx, edx
je 0x408f9e
mov ecx, edx
xor eax, eax
shl ecx, 1
rep stosb byte es:[edi], al
push dword [ebp - 0x38]
call fcn.0042344b
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.00423463
cmp dword [ebp - 0x50], esp
je 0x408fe7
push 6
call fcn.00423457
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 [0x497214]
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.004012a4
push eax
mov ebx, dword [ebp - 0x38]
call fcn.00401392
push ebx
push dword [ebp - 0x14]
mov eax, 0x10
call fcn.00423463
cmp dword [ebp - 0x60], esp
je 0x409049
push 6
call fcn.00423457
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.00406ea9
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 0x409094
push 0xa
call fcn.00423457
add esp, 4
mov dword [ebp - 0x50], eax
lea ebx, [ebp - 0x54]
call fcn.00401392
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.00423451
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.00401392
pop edx
test edx, edx
je 0x4090d9
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
push dword [ebp - 0x3c]
call fcn.0042344b
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.00423463
cmp dword [ebp - 0x50], esp
je 0x409122
push 6
call fcn.00423457
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 [0x497156]
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.004012a4
push eax
mov ebx, dword [ebp - 0x3c]
call fcn.00401392
push ebx
push dword [ebp - 0x14]
mov eax, 0xf
call fcn.00423463
cmp dword [ebp - 0x60], esp
je 0x409184
push 6
call fcn.00423457
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 0x40bf5d
push 0x80000301
push 0
push 0x80
push 1
mov ebx, 0x424ba0
call fcn.0042345d
add esp, 0x10
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4091de
push ebx
call fcn.0042344b
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
call fcn.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x4091ff
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x409212
push 1
call fcn.00423457
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x3c]
call fcn.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x409237
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40924a
push 1
call fcn.00423457
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.00406ea9
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x3c]
call fcn.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x409281
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x409294
push 1
call fcn.00423457
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.00423463
cmp dword [ebp - 0x50], esp
je 0x4092cd
push 6
call fcn.00423457
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 0x4092f0
add eax, 8
push eax
push dword [ebp - 0x14]
mov eax, 0x11
call fcn.00423463
cmp dword [ebp - 0x4c], esp
je 0x409310
push 6
call fcn.00423457
add esp, 4
cmp dword [ebp - 4], 1
jne 0x40938e
mov ebx, dword [ebp - 0x40]
call fcn.00401392
mov eax, 0
cmp eax, ecx
jl 0x409338
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x5a
jne 0x40937c
mov ebx, dword [ebp - 0x40]
call fcn.00401392
mov eax, 1
cmp eax, ecx
jl 0x409367
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x77
jne 0x40937c
xor eax, eax
jmp 0x409381
mov eax, 1
test eax, eax
je 0x40938e
jmp 0x40bf55
mov ebx, dword [ebp - 0x34]
call fcn.00401392
push ebx
push ecx
mov ebx, dword [ebp - 0x38]
call fcn.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x4093b5
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4093c8
push 1
call fcn.00423457
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.004067e6
dec eax
jns 0x4093f1
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x409404
push 1
call fcn.00423457
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 0x409423
jmp 0x40bf55
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 0x4095ba
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40946d
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x409480
push 1
call fcn.00423457
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 0x409558
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x4094bb
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4094ce
push 1
call fcn.00423457
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.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x4094fb
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40950e
push 1
call fcn.00423457
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 [0x4972a4]
fnstsw ax
test ah, 0x41
je 0x409558
mov eax, 1
jmp 0x40955a
xor eax, eax
test eax, eax
je 0x4095b2
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0x10]
call fcn.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x409582
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x409595
push 1
call fcn.00423457
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.00406ea9
mov dword [ebp - 0x44], eax
jmp 0x4095ba
pop eax
pop ebx
pop ecx
jmp 0x40943f
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 0x4095de
jmp 0x40bf55
push 0x80000301
push 0
push 0x20
push 1
mov ebx, 0x424ba0
call fcn.0042345d
add esp, 0x10
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x409613
push ebx
call fcn.0042344b
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.00423463
cmp dword [ebp - 0x4c], esp
je 0x409646
push 6
call fcn.00423457
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 0x409669
add eax, 8
push eax
push dword [ebp - 0x14]
mov eax, 0x11
call fcn.00423463
cmp dword [ebp - 0x4c], esp
je 0x409689
push 6
call fcn.00423457
add esp, 4
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0
cmp eax, ecx
jl 0x4096a7
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xb8
je 0x4096bd
jmp 0x40bf55
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 0x4096d9
mov eax, 0x4926a4
push eax
push 1
mov ebx, 0x424ee0
call fcn.0042345d
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 0x409705
push ebx
call fcn.0042344b
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 0x409751
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x409785
and eax, 0xff
jmp 0x4097d0
cmp ecx, 0x80000201
jne 0x409790
cwde
jmp 0x4097d0
cmp ecx, 0x80000301
je 0x4097d0
cmp ecx, 0x80000401
je 0x4097d0
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x4097c0
cmp ecx, 0x80000601
je 0x4097c5
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x60]
jmp 0x4097cb
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [0x5b95fc]
add ebx, 4
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp dword [ebx], 5
jne 0x40980c
mov ebx, dword [0x5b95fc]
add ebx, 8
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp dword [ebx], 0
jne 0x40980c
mov eax, 1
jmp 0x40980e
xor eax, eax
test eax, eax
je 0x409f04
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 9
cmp eax, ecx
jl 0x409834
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xcd
jne 0x40987b
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xa
cmp eax, ecx
jl 0x409863
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x2e
jne 0x40987b
mov eax, 1
jmp 0x40987d
xor eax, eax
test eax, eax
je 0x409eff
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xb
cmp eax, ecx
jl 0x4098a3
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x409a27
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 0x4098e8
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40991c
and eax, 0xff
jmp 0x409967
cmp ecx, 0x80000201
jne 0x409927
cwde
jmp 0x409967
cmp ecx, 0x80000301
je 0x409967
cmp ecx, 0x80000401
je 0x409967
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x409957
cmp ecx, 0x80000601
je 0x40995c
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x60]
jmp 0x409962
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x4099b3
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x409a0f
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xb
cmp eax, ecx
jl 0x409a45
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x409b11
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x409a9d
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x409af9
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xb
cmp eax, ecx
jl 0x409b2f
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xe9
jne 0x409eff
push 0x10
push dword [ebp - 0x44]
call fcn.004067e6
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 0x409b7b
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x409baf
and eax, 0xff
jmp 0x409bfa
cmp ecx, 0x80000201
jne 0x409bba
cwde
jmp 0x409bfa
cmp ecx, 0x80000301
je 0x409bfa
cmp ecx, 0x80000401
je 0x409bfa
mov dword [ebp - 0x5c], eax
cmp ecx, 0x80000501
je 0x409bea
cmp ecx, 0x80000601
je 0x409bef
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x5c]
jmp 0x409bf5
mov dword [ebp - 0x58], edx
fld qword [ebp - 0x5c]
call fcn.004012a4
push eax
push dword [ebp - 0x44]
call fcn.004067e6
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.00423463
cmp dword [ebp - 0x4c], esp
je 0x409c35
push 6
call fcn.00423457
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 0x409c58
add eax, 8
push eax
push dword [ebp - 0x14]
mov eax, 0x11
call fcn.00423463
cmp dword [ebp - 0x4c], esp
je 0x409c78
push 6
call fcn.00423457
add esp, 4
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0
cmp eax, ecx
jl 0x409c96
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x409e1a
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 0x409cdb
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x409d0f
and eax, 0xff
jmp 0x409d5a
cmp ecx, 0x80000201
jne 0x409d1a
cwde
jmp 0x409d5a
cmp ecx, 0x80000301
je 0x409d5a
cmp ecx, 0x80000401
je 0x409d5a
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x409d4a
cmp ecx, 0x80000601
je 0x409d4f
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x60]
jmp 0x409d55
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x409da6
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x409e02
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0
cmp eax, ecx
jl 0x409e38
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x409eff
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x409e90
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x409eec
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
jmp 0x40bf55
mov ebx, dword [0x5b95fc]
add ebx, 0x1c
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp dword [ebx], 0
je 0x40b812
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.00401392
mov eax, 5
cmp eax, ecx
jl 0x409f4c
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x409fc2
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 6
cmp eax, ecx
jl 0x409f7b
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xff
jne 0x409fc2
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 8
cmp eax, ecx
jl 0x409faa
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0xc0
jne 0x409fc2
mov eax, 1
jmp 0x409fc4
xor eax, eax
test eax, eax
je 0x40a253
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xc
cmp eax, ecx
jl 0x409fea
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40a16e
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 0x40a02f
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40a063
and eax, 0xff
jmp 0x40a0ae
cmp ecx, 0x80000201
jne 0x40a06e
cwde
jmp 0x40a0ae
cmp ecx, 0x80000301
je 0x40a0ae
cmp ecx, 0x80000401
je 0x40a0ae
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40a09e
cmp ecx, 0x80000601
je 0x40a0a3
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40a0a9
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40a0fa
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40a156
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xc
cmp eax, ecx
jl 0x40a18c
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x40a253
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40a1e4
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40a240
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 5
cmp eax, ecx
jl 0x40a271
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x33
jne 0x40a2e7
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 7
cmp eax, ecx
jl 0x40a2a0
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x8d
jne 0x40a2e7
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xb
cmp eax, ecx
jl 0x40a2cf
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x40a2e7
mov eax, 1
jmp 0x40a2e9
xor eax, eax
test eax, eax
je 0x40a75a
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x12
cmp eax, ecx
jl 0x40a30f
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x40a353
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x15
cmp eax, ecx
jl 0x40a33e
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc3
je 0x40a353
xor eax, eax
jmp 0x40a358
mov eax, 1
test eax, eax
je 0x40a41b
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40a3a7
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40a403
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x12
cmp eax, ecx
jl 0x40a439
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40a5bd
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 0x40a47e
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40a4b2
and eax, 0xff
jmp 0x40a4fd
cmp ecx, 0x80000201
jne 0x40a4bd
cwde
jmp 0x40a4fd
cmp ecx, 0x80000301
je 0x40a4fd
cmp ecx, 0x80000401
je 0x40a4fd
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40a4ed
cmp ecx, 0x80000601
je 0x40a4f2
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40a4f8
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40a549
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40a5a5
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x15
cmp eax, ecx
jl 0x40a5db
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40a75a
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 0x40a620
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40a654
and eax, 0xff
jmp 0x40a69f
cmp ecx, 0x80000201
jne 0x40a65f
cwde
jmp 0x40a69f
cmp ecx, 0x80000301
je 0x40a69f
cmp ecx, 0x80000401
je 0x40a69f
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40a68f
cmp ecx, 0x80000601
je 0x40a694
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40a69a
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40a6eb
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40a747
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 5
cmp eax, ecx
jl 0x40a778
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x8d
jne 0x40a7ee
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 9
cmp eax, ecx
jl 0x40a7a7
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x33
jne 0x40a7ee
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xb
cmp eax, ecx
jl 0x40a7d6
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x40a7ee
mov eax, 1
jmp 0x40a7f0
xor eax, eax
test eax, eax
je 0x40ac61
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x12
cmp eax, ecx
jl 0x40a816
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x40a85a
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x15
cmp eax, ecx
jl 0x40a845
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc3
je 0x40a85a
xor eax, eax
jmp 0x40a85f
mov eax, 1
test eax, eax
je 0x40a922
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40a8ae
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40a90a
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x12
cmp eax, ecx
jl 0x40a940
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40aac4
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 0x40a985
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40a9b9
and eax, 0xff
jmp 0x40aa04
cmp ecx, 0x80000201
jne 0x40a9c4
cwde
jmp 0x40aa04
cmp ecx, 0x80000301
je 0x40aa04
cmp ecx, 0x80000401
je 0x40aa04
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40a9f4
cmp ecx, 0x80000601
je 0x40a9f9
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40a9ff
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40aa50
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40aaac
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x15
cmp eax, ecx
jl 0x40aae2
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40ac61
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 0x40ab27
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40ab5b
and eax, 0xff
jmp 0x40aba6
cmp ecx, 0x80000201
jne 0x40ab66
cwde
jmp 0x40aba6
cmp ecx, 0x80000301
je 0x40aba6
cmp ecx, 0x80000401
je 0x40aba6
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40ab96
cmp ecx, 0x80000601
je 0x40ab9b
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40aba1
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40abf2
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40ac4e
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 5
cmp eax, ecx
jl 0x40ac7f
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xb9
jne 0x40acf5
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xa
cmp eax, ecx
jl 0x40acae
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x8d
jne 0x40acf5
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xe
cmp eax, ecx
jl 0x40acdd
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x40acf5
mov eax, 1
jmp 0x40acf7
xor eax, eax
test eax, eax
je 0x40b237
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 0x40ad33
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40ad67
and eax, 0xff
jmp 0x40adb2
cmp ecx, 0x80000201
jne 0x40ad72
cwde
jmp 0x40adb2
cmp ecx, 0x80000301
je 0x40adb2
cmp ecx, 0x80000401
je 0x40adb2
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40ada2
cmp ecx, 0x80000601
je 0x40ada7
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40adad
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x15
cmp eax, ecx
jl 0x40add5
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x40ae19
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x18
cmp eax, ecx
jl 0x40ae04
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc3
je 0x40ae19
xor eax, eax
jmp 0x40ae1e
mov eax, 1
test eax, eax
je 0x40aee1
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40ae6d
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40aec9
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x15
cmp eax, ecx
jl 0x40aeff
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40b083
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 0x40af44
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40af78
and eax, 0xff
jmp 0x40afc3
cmp ecx, 0x80000201
jne 0x40af83
cwde
jmp 0x40afc3
cmp ecx, 0x80000301
je 0x40afc3
cmp ecx, 0x80000401
je 0x40afc3
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40afb3
cmp ecx, 0x80000601
je 0x40afb8
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40afbe
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40b00f
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40b06b
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x18
cmp eax, ecx
jl 0x40b0a1
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40b225
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 0x40b0e6
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40b11a
and eax, 0xff
jmp 0x40b165
cmp ecx, 0x80000201
jne 0x40b125
cwde
jmp 0x40b165
cmp ecx, 0x80000301
je 0x40b165
cmp ecx, 0x80000401
je 0x40b165
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40b155
cmp ecx, 0x80000601
je 0x40b15a
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40b160
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40b1b1
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40b20d
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
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.00401392
mov eax, 5
cmp eax, ecx
jl 0x40b255
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x8d
jne 0x40b2cb
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 9
cmp eax, ecx
jl 0x40b284
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xb9
jne 0x40b2cb
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xe
cmp eax, ecx
jl 0x40b2b3
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x40b2cb
mov eax, 1
jmp 0x40b2cd
xor eax, eax
test eax, eax
je 0x40b80d
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 0x40b309
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40b33d
and eax, 0xff
jmp 0x40b388
cmp ecx, 0x80000201
jne 0x40b348
cwde
jmp 0x40b388
cmp ecx, 0x80000301
je 0x40b388
cmp ecx, 0x80000401
je 0x40b388
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40b378
cmp ecx, 0x80000601
je 0x40b37d
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40b383
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x15
cmp eax, ecx
jl 0x40b3ab
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x40b3ef
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x18
cmp eax, ecx
jl 0x40b3da
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc3
je 0x40b3ef
xor eax, eax
jmp 0x40b3f4
mov eax, 1
test eax, eax
je 0x40b4b7
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40b443
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40b49f
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x15
cmp eax, ecx
jl 0x40b4d5
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40b659
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 0x40b51a
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40b54e
and eax, 0xff
jmp 0x40b599
cmp ecx, 0x80000201
jne 0x40b559
cwde
jmp 0x40b599
cmp ecx, 0x80000301
je 0x40b599
cmp ecx, 0x80000401
je 0x40b599
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40b589
cmp ecx, 0x80000601
je 0x40b58e
fld dword [ebp - 0x60]
jmp 0x40b594
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40b5e5
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40b641
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0x18
cmp eax, ecx
jl 0x40b677
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40b7fb
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 0x40b6bc
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40b6f0
and eax, 0xff
jmp 0x40b73b
cmp ecx, 0x80000201
jne 0x40b6fb
cwde
jmp 0x40b73b
cmp ecx, 0x80000301
je 0x40b73b
cmp ecx, 0x80000401
je 0x40b73b
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40b787
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], 0
jmp 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 5
cmp eax, ecx
jl 0x40b830
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xe8
jne 0x40bbf0
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 0x40b86c
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40b8a0
and eax, 0xff
jmp 0x40b8eb
cmp ecx, 0x80000201
jne 0x40b8ab
cwde
jmp 0x40b8eb
cmp ecx, 0x80000301
je 0x40b8eb
cmp ecx, 0x80000401
je 0x40b8eb
mov dword [ebp - 0x5c], eax
cmp ecx, 0x80000501
je 0x40b8db
cmp ecx, 0x80000601
je 0x40b8e0
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x5c]
jmp 0x40b8e6
mov dword [ebp - 0x58], edx
fld qword [ebp - 0x5c]
call fcn.004012a4
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jle 0x40b909
cmp dword [ebp - 0x44], 0xa
jge 0x40b909
mov eax, 1
jmp 0x40b90b
xor eax, eax
test eax, eax
je 0x40bbeb
push 0xd
push dword [ebp - 0x44]
call fcn.004067e6
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x48]
call fcn.00401392
push ebx
push ecx
mov eax, dword [ebp - 0x44]
dec eax
jns 0x40b940
push 4
call fcn.00423457
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40b953
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xf
jne 0x40bbeb
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xa
cmp eax, ecx
jl 0x40b982
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40bb06
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 0x40b9c7
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40b9fb
and eax, 0xff
jmp 0x40ba46
cmp ecx, 0x80000201
jne 0x40ba06
cwde
jmp 0x40ba46
cmp ecx, 0x80000301
je 0x40ba46
cmp ecx, 0x80000401
je 0x40ba46
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40ba36
cmp ecx, 0x80000601
je 0x40ba3b
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40ba41
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40ba92
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40baee
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xa
cmp eax, ecx
jl 0x40bb24
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x40bbeb
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40bb7c
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40bbd8
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
jmp 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 5
cmp eax, ecx
jl 0x40bc0e
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xba
jne 0x40bc55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xa
cmp eax, ecx
jl 0x40bc3d
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xff
jne 0x40bc55
mov eax, 1
jmp 0x40bc57
xor eax, eax
test eax, eax
je 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xb
cmp eax, ecx
jl 0x40bc7d
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x12
je 0x40bcc1
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xb
cmp eax, ecx
jl 0x40bcac
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xd2
je 0x40bcc1
xor eax, eax
jmp 0x40bcc6
mov eax, 1
test eax, eax
je 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xc
cmp eax, ecx
jl 0x40bcec
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40be70
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 0x40bd31
mov eax, 0x4926a4
push eax
push 3
mov ebx, 0x424830
call fcn.0042345d
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 0x40bd65
and eax, 0xff
jmp 0x40bdb0
cmp ecx, 0x80000201
jne 0x40bd70
cwde
jmp 0x40bdb0
cmp ecx, 0x80000301
je 0x40bdb0
cmp ecx, 0x80000401
je 0x40bdb0
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40bda0
cmp ecx, 0x80000601
je 0x40bda5
push 2
call fcn.00423457
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40bdab
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.004012a4
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40bdfc
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40be58
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
mov ebx, dword [ebp - 0x48]
call fcn.00401392
mov eax, 0xc
cmp eax, ecx
jl 0x40be8e
push 1
call fcn.00423457
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x40bf55
push 0x5b95f8
push 4
mov eax, 2
call fcn.00423445
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x5b95f8]
mov dword [ebp - 0x50], ebx
call fcn.00401392
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 0x40bee6
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.00423469
add esp, 8
mov dword [0x5b95f8], 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.00423451
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 0x40bf42
push eax
mov ebx, eax
call fcn.004012cb
inc eax
push eax
call fcn.00423451
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 0x40bf55
pop eax
pop ebx
pop ecx
jmp 0x40919b
add esp, 0xc
mov dword [ebp - 0x4c], esp
push dword [ebp - 0x14]
mov eax, 0x12
call fcn.00423463
cmp dword [ebp - 0x4c], esp
je 0x40bf82
push 6
call fcn.00423457
add esp, 4
mov dword [ebp - 0x4c], esp
push dword [ebp - 0x10]
mov eax, 0x13
call fcn.00423463
cmp dword [ebp - 0x4c], esp
je 0x40bfa4
push 6
call fcn.00423457
add esp, 4
pop ebx
pop ecx
jmp 0x4077b6
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40bfbe
push ebx
call fcn.0042344b
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40bfd5
push ebx
call fcn.0042344b
add esp, 4
pop ebx
call fcn.0042344b
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x40bfee
push ebx
call fcn.0042344b
add esp, 4
mov ebx, dword [ebp - 0x18]
push ebx
add ebx, 0x38
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042344b
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042344b
add esp, 4
pop ebx
call fcn.0042344b
add esp, 4
mov ebx, dword [ebp - 0x1c]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042344b
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.0042344b
add esp, 4
pop ebx
call fcn.0042344b
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 0x40c06f
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40c06b
imul eax, dword [ebx]
jmp 0x40c060
mov ecx, eax
test ecx, ecx
je 0x40c097
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042344b
add esp, 4
pop ebx
call fcn.0042344b
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40c075
call fcn.0042344b
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042344b
add esp, 4
pop ebx
call fcn.0042344b
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042344b
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.0042344b
add esp, 4
pop ebx
call fcn.0042344b
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 0x40c10d
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40c109
imul eax, dword [ebx]
jmp 0x40c0fe
mov ecx, eax
test ecx, ecx
je 0x40c135
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042344b
add esp, 4
pop ebx
call fcn.0042344b
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40c113
call fcn.0042344b
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042344b
add esp, 4
pop ebx
call fcn.0042344b
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
call fcn.0042344b
add esp, 4
mov ebx, dword [ebp - 0x34]
push ebx
call fcn.0042344b
add esp, 4
mov ebx, dword [ebp - 0x38]
push ebx
call fcn.0042344b
add esp, 4
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0042344b
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40c196
push ebx
call fcn.0042344b
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x40c1a6
push ebx
call fcn.0042344b
add esp, 4
mov esp, ebp
pop ebp
ret