Function at 0x40f48d
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.00415a5b
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.00415a5b
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.00415a5b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x6a3683
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.00415a5b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4a42aa
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.00415a5b
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.00415a5b
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.00415a5b
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.00415a5b
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.00415a5b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x57be03
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.00415a5b
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.00415a5b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x6a365b
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 0x40f5e4
pop ebx
add ebx, 4
push ebx
push 0x208
call fcn.00415a5b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x57be03
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.00415a5b
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.00415a5b
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.00415a5b
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.00415a5b
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.00415a5b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x57be03
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.00415a5b
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.00415a5b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x6a365b
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 0x40f702
pop ebx
add ebx, 4
push ebx
push 0x208
call fcn.00415a5b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x57be03
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 0x2c
call fcn.00415a5b
add esp, 4
mov dword [ebp - 0x30], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xb
rep stosd dword es:[edi], eax
push 8
call fcn.00415a5b
add esp, 4
mov dword [ebp - 0x34], eax
mov edi, eax
mov esi, 0x4a40da
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.00415a5b
add esp, 4
mov dword [ebp - 0x38], eax
mov edi, eax
mov esi, 0x4a40da
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.00415a5b
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x4a40da
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 [0x6cee60]
call fcn.00401524
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0
jne 0x413914
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x413911
cmp dword [ebp - 4], 1
jne 0x40f883
mov eax, 0x6a3571
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.0040d47b
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x40f866
push ebx
call fcn.00415a55
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40f87a
push ebx
call fcn.00415a55
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x40f91e
cmp dword [ebp - 4], 2
jne 0x40f8ce
mov eax, 0x6a35b1
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.0040d47b
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x40f8b1
push ebx
call fcn.00415a55
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40f8c5
push ebx
call fcn.00415a55
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x40f91e
cmp dword [ebp - 4], 3
jne 0x40f919
mov eax, 0x6a35c3
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.0040d47b
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x40f8fc
push ebx
call fcn.00415a55
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40f910
push ebx
call fcn.00415a55
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x40f91e
jmp 0x413914
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, 0x417610
call fcn.00415a6d
add esp, 0x10
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x40f95b
push ebx
call fcn.00415a55
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
call fcn.00413b10
mov dword [ebp - 0x4c], eax
push dword [ebp - 8]
push 0x4a412a
push dword [ebp - 0x4c]
mov ecx, 3
call fcn.004010fc
add esp, 0xc
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x40f992
push ebx
call fcn.00415a55
add esp, 4
mov dword [ebp - 0x54], esp
push 0
push dword [ebp - 0x10]
push dword [ebp - 0x50]
mov eax, 0x3e
call fcn.00415a67
cmp dword [ebp - 0x54], esp
je 0x40f9bc
push 6
call fcn.00415a61
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x40f9cc
push ebx
call fcn.00415a55
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, 0x3f
call fcn.00415a67
cmp dword [ebp - 0x4c], esp
je 0x40fa0c
push 6
call fcn.00415a61
add esp, 4
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x4138c6
mov dword [ebp - 0x4c], esp
push 0
push 0
push 0
push dword [ebp - 0x14]
mov eax, 0x40
call fcn.00415a67
cmp dword [ebp - 0x4c], esp
je 0x40fa4a
push 6
call fcn.00415a61
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.00415a5b
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, 0x41
call fcn.00415a67
cmp dword [ebp - 0x4c], esp
je 0x40fb87
push 6
call fcn.00415a61
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.00415a4f
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 0x40fc58
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40fc56
imul eax, dword [edi]
jmp 0x40fc4b
mov ecx, eax
cmp ecx, 4
jle 0x40fc62
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.00415a4f
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 0x40fcb5
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40fcb3
imul eax, dword [edi]
jmp 0x40fca8
mov ecx, eax
cmp ecx, 0xa
jle 0x40fcbf
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.00415a55
add esp, 4
pop eax
test eax, eax
je 0x40fd03
mov ebx, dword [ebp - 0x18]
mov dword [ebp - 0x60], ebx
mov ebx, dword [ebp - 0x60]
cmp word [ebx], 0x5a4d
jne 0x40fd03
mov eax, 1
jmp 0x40fd05
xor eax, eax
test eax, eax
je 0x4138c6
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, 0x40
call fcn.00415a67
cmp dword [ebp - 0x50], esp
je 0x40fd47
push 6
call fcn.00415a61
add esp, 4
mov eax, dword [ebp - 0x20]
push eax
push 0x14
call fcn.00415a5b
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.00415a5b
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.00415a5b
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.00415a5b
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.00401366
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.00415a5b
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 0x40fe28
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x28
call fcn.00415a5b
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.00401366
pop eax
sub ebx, eax
add ecx, ebx
push ecx
call fcn.00415a5b
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 0x40fdde
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.00401366
pop eax
sub ebx, eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.00415a5b
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.00415a55
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.00415a55
add esp, 4
pop ebx
call fcn.00415a55
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 0x40fea5
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40fea1
imul eax, dword [ebx]
jmp 0x40fe96
mov ecx, eax
test ecx, ecx
je 0x40fecd
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00415a55
add esp, 4
pop ebx
call fcn.00415a55
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40feab
call fcn.00415a55
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00415a55
add esp, 4
pop ebx
call fcn.00415a55
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.00415a5b
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 0x41020e
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, 0x42
call fcn.00415a67
cmp dword [ebp - 0x4c], esp
je 0x4102c9
push 6
call fcn.00415a61
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.00415a4f
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 0x410605
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x410603
imul eax, dword [edi]
jmp 0x4105f8
mov ecx, eax
cmp ecx, 8
jle 0x41060f
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 0x4105d1
pop edi
add edi, 4
push ebx
push edi
push 4
mov eax, 2
call fcn.00415a4f
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 0x4106bd
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x4106bb
imul eax, dword [edi]
jmp 0x4106b0
mov ecx, eax
cmp ecx, 0x80
jle 0x4106ca
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.00415a55
add esp, 4
pop eax
test eax, eax
je 0x410706
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x60], ebx
mov ebx, dword [ebp - 0x60]
cmp dword [ebx], 0x4550
jne 0x410706
mov eax, 1
jmp 0x410708
xor eax, eax
test eax, eax
je 0x4138c6
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 0x410745
push 0xa
call fcn.00415a61
add esp, 4
mov dword [ebp - 0x54], eax
lea ebx, [ebp - 0x58]
call fcn.00401366
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.00415a5b
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.00401366
pop edx
test ecx, ecx
je 0x4107ac
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00415a55
add esp, 4
pop ebx
call fcn.00415a55
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x410788
pop edx
pop edi
test edx, edx
je 0x4107fe
mov ebx, edi
push edx
push ebx
push 0x28
call fcn.00415a5b
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.00415a5b
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x6a365b
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 0x4107b6
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
call fcn.00415a55
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 0x410846
push 0xa
call fcn.00415a61
add esp, 4
mov dword [ebp - 0x54], eax
lea ebx, [ebp - 0x58]
call fcn.00401366
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.00415a5b
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.00401366
pop edx
test edx, edx
je 0x41088d
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
call fcn.00415a55
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 [0x6a3663]
fstp qword [ebp - 0x5c]
mov dword [ebp - 0x60], esp
push 1
push 0
fld qword [ebp - 0x5c]
call fcn.00401fb8
push eax
push dword [ebp - 0x14]
mov eax, 0x40
call fcn.00415a67
cmp dword [ebp - 0x60], esp
je 0x4108fd
push 6
call fcn.00415a61
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 [0x6a366b]
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.00401fb8
push eax
mov ebx, dword [ebp - 0x4c]
mov ebx, dword [ebx]
call fcn.00401366
push ebx
mov dword [ebp - 0x6c], ecx
test ecx, ecx
jne 0x410961
xor eax, eax
jmp 0x41096d
imul ecx, ecx, 0x28
push ecx
call fcn.00415a5b
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 0x410a10
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 0x410a10
add ebx, 4
add edi, 0x28
jmp 0x410982
push dword [ebp - 0x14]
mov eax, 0x43
call fcn.00415a67
cmp dword [ebp - 0x64], esp
je 0x410a2f
push 6
call fcn.00415a61
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 0x410aff
push ecx
push edi
push ebx
mov edi, dword [edi]
push ebx
push edi
push 1
mov eax, 2
call fcn.00415a4f
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 0x410a76
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x410a74
imul eax, dword [edi]
jmp 0x410a69
mov ecx, eax
cmp ecx, 8
jle 0x410a80
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 0x410aff
add ebx, 0x28
add edi, 4
jmp 0x410a42
call fcn.00415a55
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 0x410c1b
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0x10]
call fcn.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x410b52
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x410b65
push 1
call fcn.00415a61
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.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x410b8d
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x410ba0
push 1
call fcn.00415a61
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.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x410bcd
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x410be0
push 1
call fcn.00415a61
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.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
pop eax
pop ebx
pop ecx
jmp 0x410b24
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 0x410de1
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x410c7c
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x410c8f
push 1
call fcn.00415a61
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 0x410d67
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x410cca
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x410cdd
push 1
call fcn.00415a61
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.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x410d0a
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x410d1d
push 1
call fcn.00415a61
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 [0x6a3673]
fnstsw ax
test ah, 0x41
je 0x410d67
mov eax, 1
jmp 0x410d69
xor eax, eax
test eax, eax
je 0x410dd9
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0x10]
call fcn.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x410d91
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x410da4
push 1
call fcn.00415a61
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
fild dword [ebp - 0x28]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
fild dword [ebp - 0x2c]
fstp qword [ebp - 0x58]
fsub qword [ebp - 0x58]
fstp qword [ebp - 0x60]
fld qword [ebp - 0x60]
call fcn.00401fb8
mov dword [ebp - 0x28], eax
jmp 0x410de1
pop eax
pop ebx
pop ecx
jmp 0x410c4e
add esp, 0xc
cmp dword [ebp - 0x28], 0
jle 0x4138c6
mov dword [ebp - 0x4c], esp
push 0
push 0
push dword [ebp - 0x28]
push dword [ebp - 0x14]
mov eax, 0x40
call fcn.00415a67
cmp dword [ebp - 0x4c], esp
je 0x410e1d
push 6
call fcn.00415a61
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
mov eax, dword [ebp - 0x30]
push eax
push 0x28
call fcn.00415a5b
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
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
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push dword [ebp - 0x14]
mov eax, 0x44
call fcn.00415a67
cmp dword [ebp - 0x4c], esp
je 0x410ee0
push 6
call fcn.00415a61
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
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
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
call fcn.00415a55
add esp, 4
pop eax
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
mov ebx, dword [ebp - 0x50]
fild dword [ebx]
fstp qword [ebp - 0x58]
fld qword [ebp - 0x58]
fild dword [ebp - 0x2c]
fstp qword [ebp - 0x60]
fsub qword [ebp - 0x60]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
call fcn.00401fb8
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 0x410fbe
push 0xa
call fcn.00415a61
add esp, 4
mov dword [ebp - 0x50], eax
lea ebx, [ebp - 0x54]
call fcn.00401366
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.00415a5b
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.00401366
pop edx
test edx, edx
je 0x411003
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
push dword [ebp - 0x34]
call fcn.00415a55
add esp, 4
pop eax
mov dword [ebp - 0x34], 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, 0x40
call fcn.00415a67
cmp dword [ebp - 0x50], esp
je 0x41104c
push 6
call fcn.00415a61
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 [0x4a4420]
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.00401fb8
push eax
mov ebx, dword [ebp - 0x34]
call fcn.00401366
push ebx
push dword [ebp - 0x14]
mov eax, 0x45
call fcn.00415a67
cmp dword [ebp - 0x60], esp
je 0x4110ae
push 6
call fcn.00415a61
add esp, 4
mov ebx, dword [ebp - 0x30]
add ebx, 0x28
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x30]
add ebx, 0x28
mov dword [ebp - 0x50], ebx
mov ebx, dword [ebp - 0x50]
fild dword [ebx]
fstp qword [ebp - 0x58]
fld qword [ebp - 0x58]
fild dword [ebp - 0x2c]
fstp qword [ebp - 0x60]
fsub qword [ebp - 0x60]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x30]
add ebx, 0x1c
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x54], 1
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
cmp eax, 0
jge 0x41110b
push 0xa
call fcn.00415a61
add esp, 4
mov dword [ebp - 0x50], eax
lea ebx, [ebp - 0x54]
call fcn.00401366
push ecx
shl ecx, 1
add ecx, 8
push ecx
call fcn.00415a5b
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.00401366
pop edx
test edx, edx
je 0x411151
mov ecx, edx
xor eax, eax
shl ecx, 1
rep stosb byte es:[edi], al
push dword [ebp - 0x38]
call fcn.00415a55
add esp, 4
pop eax
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x30]
add ebx, 0x28
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, 0x40
call fcn.00415a67
cmp dword [ebp - 0x50], esp
je 0x41119a
push 6
call fcn.00415a61
add esp, 4
mov ebx, dword [ebp - 0x30]
add ebx, 0x1c
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
fild dword [ebx]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
fmul qword [0x4a4470]
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.00401fb8
push eax
mov ebx, dword [ebp - 0x38]
call fcn.00401366
push ebx
push dword [ebp - 0x14]
mov eax, 0x46
call fcn.00415a67
cmp dword [ebp - 0x60], esp
je 0x4111fc
push 6
call fcn.00415a61
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
mov ebx, dword [ebp - 0x50]
fild dword [ebx]
fstp qword [ebp - 0x58]
fld qword [ebp - 0x58]
fild dword [ebp - 0x2c]
fstp qword [ebp - 0x60]
fsub qword [ebp - 0x60]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x30]
add ebx, 0x1c
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x54], 1
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
cmp eax, 0
jge 0x411259
push 0xa
call fcn.00415a61
add esp, 4
mov dword [ebp - 0x50], eax
lea ebx, [ebp - 0x54]
call fcn.00401366
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.00415a5b
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.00401366
pop edx
test edx, edx
je 0x41129e
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
push dword [ebp - 0x3c]
call fcn.00415a55
add esp, 4
pop eax
mov dword [ebp - 0x3c], 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, 0x40
call fcn.00415a67
cmp dword [ebp - 0x50], esp
je 0x4112e7
push 6
call fcn.00415a61
add esp, 4
mov ebx, dword [ebp - 0x30]
add ebx, 0x1c
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
fild dword [ebx]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
fmul qword [0x4a4420]
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.00401fb8
push eax
mov ebx, dword [ebp - 0x3c]
call fcn.00401366
push ebx
push dword [ebp - 0x14]
mov eax, 0x45
call fcn.00415a67
cmp dword [ebp - 0x60], esp
je 0x411349
push 6
call fcn.00415a61
add esp, 4
mov ebx, dword [ebp - 0x30]
add ebx, 0x1c
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 0x4138c3
push 0x80000301
push 0
push 0x80
push 1
mov ebx, 0x417360
call fcn.00415a6d
add esp, 0x10
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4113a3
push ebx
call fcn.00415a55
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
call fcn.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x4113c4
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4113d7
push 1
call fcn.00415a61
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x3c]
call fcn.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x4113fc
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x41140f
push 1
call fcn.00415a61
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x50], ebx
mov ebx, dword [ebp - 0x50]
fild dword [ebx]
fstp qword [ebp - 0x58]
fld qword [ebp - 0x58]
fild dword [ebp - 0x2c]
fstp qword [ebp - 0x60]
fsub qword [ebp - 0x60]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x3c]
call fcn.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x411458
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x41146b
push 1
call fcn.00415a61
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, 0x40
call fcn.00415a67
cmp dword [ebp - 0x50], esp
je 0x4114a4
push 6
call fcn.00415a61
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 0x4114c7
add eax, 8
push eax
push dword [ebp - 0x14]
mov eax, 0x47
call fcn.00415a67
cmp dword [ebp - 0x4c], esp
je 0x4114e7
push 6
call fcn.00415a61
add esp, 4
cmp dword [ebp - 4], 1
jne 0x411565
mov ebx, dword [ebp - 0x40]
call fcn.00401366
mov eax, 0
cmp eax, ecx
jl 0x41150f
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x5a
jne 0x411553
mov ebx, dword [ebp - 0x40]
call fcn.00401366
mov eax, 1
cmp eax, ecx
jl 0x41153e
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x77
jne 0x411553
xor eax, eax
jmp 0x411558
mov eax, 1
test eax, eax
je 0x411565
jmp 0x4138bb
mov ebx, dword [ebp - 0x34]
call fcn.00401366
push ebx
push ecx
mov ebx, dword [ebp - 0x38]
call fcn.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x41158c
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x41159f
push 1
call fcn.00415a61
add esp, 4
shl eax, 1
add ebx, eax
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]
fadd qword [0x4a4168]
fstp qword [ebp - 0x5c]
fld qword [ebp - 0x5c]
call fcn.00401fb8
dec eax
jns 0x4115da
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4115ed
push 1
call fcn.00415a61
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x60], ebx
mov ebx, dword [ebp - 0x60]
mov eax, dword [ebx]
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jne 0x41160c
jmp 0x4138bb
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 0x4117b5
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x411656
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x411669
push 1
call fcn.00415a61
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 0x411741
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x4116a4
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4116b7
push 1
call fcn.00415a61
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.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x4116e4
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4116f7
push 1
call fcn.00415a61
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 [0x6a3673]
fnstsw ax
test ah, 0x41
je 0x411741
mov eax, 1
jmp 0x411743
xor eax, eax
test eax, eax
je 0x4117ad
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0x10]
call fcn.00401366
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x41176b
push 4
call fcn.00415a61
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x41177e
push 1
call fcn.00415a61
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x4c], ebx
fild dword [ebp - 0x44]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
mov ebx, dword [ebp - 0x4c]
fild dword [ebx]
fstp qword [ebp - 0x5c]
fsub qword [ebp - 0x5c]
fstp qword [ebp - 0x64]
fld qword [ebp - 0x64]
call fcn.00401fb8
mov dword [ebp - 0x44], eax
jmp 0x4117b5
pop eax
pop ebx
pop ecx
jmp 0x411628
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 0x4117d9
jmp 0x4138bb
push 0x80000301
push 0
push 0x20
push 1
mov ebx, 0x417360
call fcn.00415a6d
add esp, 0x10
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x41180e
push ebx
call fcn.00415a55
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, 0x40
call fcn.00415a67
cmp dword [ebp - 0x4c], esp
je 0x411841
push 6
call fcn.00415a61
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 0x411864
add eax, 8
push eax
push dword [ebp - 0x14]
mov eax, 0x47
call fcn.00415a67
cmp dword [ebp - 0x4c], esp
je 0x411884
push 6
call fcn.00415a61
add esp, 4
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0
cmp eax, ecx
jl 0x4118a2
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xb8
je 0x4118b8
jmp 0x4138bb
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 0x4118d4
mov eax, 0x4a40da
push eax
push 1
mov ebx, 0x417460
call fcn.00415a6d
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 0x411900
push ebx
call fcn.00415a55
add esp, 4
pop eax
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [0x6cee30]
add ebx, 4
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp dword [ebx], 5
jne 0x41193d
mov ebx, dword [0x6cee30]
add ebx, 8
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp dword [ebx], 0
jne 0x41193d
mov eax, 1
jmp 0x41193f
xor eax, eax
test eax, eax
je 0x41214b
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 9
cmp eax, ecx
jl 0x411965
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xcd
jne 0x4119ac
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0xa
cmp eax, ecx
jl 0x411994
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x2e
jne 0x4119ac
mov eax, 1
jmp 0x4119ae
xor eax, eax
test eax, eax
je 0x412146
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 0x4119ea
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
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 0x411a1e
and eax, 0xff
jmp 0x411a69
cmp ecx, 0x80000201
jne 0x411a29
cwde
jmp 0x411a69
cmp ecx, 0x80000301
je 0x411a69
cmp ecx, 0x80000401
je 0x411a69
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x411a59
cmp ecx, 0x80000601
je 0x411a5e
push 2
call fcn.00415a61
add esp, 4
fld dword [ebp - 0x60]
jmp 0x411a64
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0xb
cmp eax, ecx
jl 0x411a8c
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x411c10
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 0x411ad1
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
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 0x411b05
and eax, 0xff
jmp 0x411b50
cmp ecx, 0x80000201
jne 0x411b10
cwde
jmp 0x411b50
cmp ecx, 0x80000301
je 0x411b50
cmp ecx, 0x80000401
je 0x411b50
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x411b40
cmp ecx, 0x80000601
je 0x411b45
push 2
call fcn.00415a61
add esp, 4
fld dword [ebp - 0x60]
jmp 0x411b4b
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x411b9c
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x411bf8
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0xb
cmp eax, ecx
jl 0x411c2e
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x411d0c
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], 0
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x411c98
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x411cf4
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0xb
cmp eax, ecx
jl 0x411d2a
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xe9
jne 0x412146
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 0x411d66
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
add esp, 0x28
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x4c], ecx
fild dword [ebp - 0x44]
fstp qword [ebp - 0x5c]
fld qword [ebp - 0x5c]
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x54]
cmp ecx, 0x80000101
jne 0x411da3
and eax, 0xff
jmp 0x411dc9
cmp ecx, 0x80000201
jne 0x411dae
cwde
jmp 0x411dc9
mov dword [ebp - 0x64], eax
cmp ecx, 0x80000301
je 0x411dcc
cmp ecx, 0x80000401
jne 0x411dd1
mov dword [ebp - 0x60], edx
fild qword [ebp - 0x64]
jmp 0x411df3
mov dword [ebp - 0x64], eax
fild dword [ebp - 0x64]
jmp 0x411df3
cmp ecx, 0x80000501
jne 0x411dde
fld dword [ebp - 0x64]
jmp 0x411df3
cmp ecx, 0x80000601
je 0x411dfc
push 2
call fcn.00415a61
add esp, 4
fstp qword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
fadd qword [ebp - 0x64]
fadd qword [0x6a367b]
fstp qword [ebp - 0x6c]
mov ecx, dword [ebp - 0x4c]
cmp ecx, reloc.WS2_32.dll_connect
je 0x411e25
cmp ecx, reloc.WS2_32.dll_getpeername
jne 0x411e35
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x411e35
push ebx
call fcn.00415a55
add esp, 4
mov dword [ebp - 0x70], esp
push 0
push 0
fld qword [ebp - 0x6c]
call fcn.00401fb8
push eax
push dword [ebp - 0x14]
mov eax, 0x40
call fcn.00415a67
cmp dword [ebp - 0x70], esp
je 0x411e6a
push 6
call fcn.00415a61
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 0x411e8d
add eax, 8
push eax
push dword [ebp - 0x14]
mov eax, 0x47
call fcn.00415a67
cmp dword [ebp - 0x4c], esp
je 0x411ead
push 6
call fcn.00415a61
add esp, 4
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0
cmp eax, ecx
jl 0x411ecb
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x41204f
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 0x411f10
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
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 0x411f44
and eax, 0xff
jmp 0x411f8f
cmp ecx, 0x80000201
jne 0x411f4f
cwde
jmp 0x411f8f
cmp ecx, 0x80000301
je 0x411f8f
cmp ecx, 0x80000401
je 0x411f8f
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x411f7f
cmp ecx, 0x80000601
je 0x411f84
push 2
call fcn.00415a61
add esp, 4
fld dword [ebp - 0x60]
jmp 0x411f8a
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x411fdb
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x412037
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0
cmp eax, ecx
jl 0x41206d
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x412146
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], 0
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x4120d7
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x412133
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
jmp 0x4138bb
mov ebx, dword [0x6cee30]
add ebx, 0x1c
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp dword [ebx], 0
je 0x41348c
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 0x412197
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
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 0x4121cb
and eax, 0xff
jmp 0x412216
cmp ecx, 0x80000201
jne 0x4121d6
cwde
jmp 0x412216
cmp ecx, 0x80000301
je 0x412216
cmp ecx, 0x80000401
je 0x412216
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x412206
cmp ecx, 0x80000601
je 0x41220b
push 2
call fcn.00415a61
add esp, 4
fld dword [ebp - 0x60]
jmp 0x412211
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
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 - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 5
cmp eax, ecx
jl 0x41225d
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x8d
jne 0x4122d3
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 9
cmp eax, ecx
jl 0x41228c
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xb9
jne 0x4122d3
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0xe
cmp eax, ecx
jl 0x4122bb
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x4122d3
mov eax, 1
jmp 0x4122d5
xor eax, eax
test eax, eax
je 0x412633
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 0x412311
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
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 0x412345
and eax, 0xff
jmp 0x412390
cmp ecx, 0x80000201
jne 0x412350
cwde
jmp 0x412390
cmp ecx, 0x80000301
je 0x412390
cmp ecx, 0x80000401
je 0x412390
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x412380
cmp ecx, 0x80000601
je 0x412385
push 2
call fcn.00415a61
add esp, 4
fld dword [ebp - 0x60]
jmp 0x41238b
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0x15
cmp eax, ecx
jl 0x4123b3
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x412537
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 0x4123f8
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
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 0x41242c
and eax, 0xff
jmp 0x412477
cmp ecx, 0x80000201
jne 0x412437
cwde
jmp 0x412477
cmp ecx, 0x80000301
je 0x412477
cmp ecx, 0x80000401
je 0x412477
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x412467
cmp ecx, 0x80000601
je 0x41246c
push 2
call fcn.00415a61
add esp, 4
fld dword [ebp - 0x60]
jmp 0x412472
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x4124c3
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x41251f
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0x15
cmp eax, ecx
jl 0x412555
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x412621
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x4125ad
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x412609
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
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.00401366
mov eax, 5
cmp eax, ecx
jl 0x412651
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x8d
jne 0x4126c7
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 9
cmp eax, ecx
jl 0x412680
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x33
jne 0x4126c7
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0xe
cmp eax, ecx
jl 0x4126af
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x4126c7
mov eax, 1
jmp 0x4126c9
xor eax, eax
test eax, eax
je 0x412998
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0x12
cmp eax, ecx
jl 0x4126ef
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x412873
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 0x412734
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
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 0x412768
and eax, 0xff
jmp 0x4127b3
cmp ecx, 0x80000201
jne 0x412773
cwde
jmp 0x4127b3
cmp ecx, 0x80000301
je 0x4127b3
cmp ecx, 0x80000401
je 0x4127b3
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x4127a3
cmp ecx, 0x80000601
je 0x4127a8
push 2
call fcn.00415a61
add esp, 4
fld dword [ebp - 0x60]
jmp 0x4127ae
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x4127ff
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x41285b
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0x15
cmp eax, ecx
jl 0x412891
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x4128d5
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0x12
cmp eax, ecx
jl 0x4128c0
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc3
je 0x4128d5
xor eax, eax
jmp 0x4128da
mov eax, 1
test eax, eax
je 0x412998
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x412929
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x412985
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 5
cmp eax, ecx
jl 0x4129b6
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xb9
jne 0x412a2c
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0xa
cmp eax, ecx
jl 0x4129e5
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x8d
jne 0x412a2c
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0xe
cmp eax, ecx
jl 0x412a14
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x412a2c
mov eax, 1
jmp 0x412a2e
xor eax, eax
test eax, eax
je 0x412f6e
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 0x412a6a
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
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 0x412a9e
and eax, 0xff
jmp 0x412ae9
cmp ecx, 0x80000201
jne 0x412aa9
cwde
jmp 0x412ae9
cmp ecx, 0x80000301
je 0x412ae9
cmp ecx, 0x80000401
je 0x412ae9
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x412ad9
cmp ecx, 0x80000601
je 0x412ade
push 2
call fcn.00415a61
add esp, 4
fld dword [ebp - 0x60]
jmp 0x412ae4
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0x18
cmp eax, ecx
jl 0x412b0c
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x412c90
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 0x412b51
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
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 0x412b85
and eax, 0xff
jmp 0x412bd0
cmp ecx, 0x80000201
jne 0x412b90
cwde
jmp 0x412bd0
cmp ecx, 0x80000301
je 0x412bd0
cmp ecx, 0x80000401
je 0x412bd0
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x412bc0
cmp ecx, 0x80000601
je 0x412bc5
push 2
call fcn.00415a61
add esp, 4
fld dword [ebp - 0x60]
jmp 0x412bcb
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x412c1c
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x412c78
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0x15
cmp eax, ecx
jl 0x412cae
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x412e32
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 0x412cf3
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
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 0x412d27
and eax, 0xff
jmp 0x412d72
cmp ecx, 0x80000201
jne 0x412d32
cwde
jmp 0x412d72
cmp ecx, 0x80000301
je 0x412d72
cmp ecx, 0x80000401
je 0x412d72
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x412d62
cmp ecx, 0x80000601
je 0x412d67
push 2
call fcn.00415a61
add esp, 4
fld dword [ebp - 0x60]
jmp 0x412d6d
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x412dbe
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x412e1a
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0x18
cmp eax, ecx
jl 0x412e50
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x412e94
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0x15
cmp eax, ecx
jl 0x412e7f
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc3
je 0x412e94
xor eax, eax
jmp 0x412e99
mov eax, 1
test eax, eax
je 0x412f5c
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x412ee8
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x412f44
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
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.00401366
mov eax, 5
cmp eax, ecx
jl 0x412f8c
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x33
jne 0x413002
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 7
cmp eax, ecx
jl 0x412fbb
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x8d
jne 0x413002
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0xb
cmp eax, ecx
jl 0x412fea
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x413002
mov eax, 1
jmp 0x413004
xor eax, eax
test eax, eax
je 0x413487
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.00401366
mov eax, 0x15
cmp eax, ecx
jl 0x41303c
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x4131c0
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 0x413081
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
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 0x4130b5
and eax, 0xff
jmp 0x413100
cmp ecx, 0x80000201
jne 0x4130c0
cwde
jmp 0x413100
cmp ecx, 0x80000301
je 0x413100
cmp ecx, 0x80000401
je 0x413100
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x4130f0
cmp ecx, 0x80000601
je 0x4130f5
push 2
call fcn.00415a61
add esp, 4
fld dword [ebp - 0x60]
jmp 0x4130fb
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x41314c
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x4131a8
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0x12
cmp eax, ecx
jl 0x4131de
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x413362
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 0x413223
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
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 0x413257
and eax, 0xff
jmp 0x4132a2
cmp ecx, 0x80000201
jne 0x413262
cwde
jmp 0x4132a2
cmp ecx, 0x80000301
je 0x4132a2
cmp ecx, 0x80000401
je 0x4132a2
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x413292
cmp ecx, 0x80000601
je 0x413297
push 2
call fcn.00415a61
add esp, 4
fld dword [ebp - 0x60]
jmp 0x41329d
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x4132ee
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x41334a
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0x15
cmp eax, ecx
jl 0x413380
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x4133c4
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0x12
cmp eax, ecx
jl 0x4133af
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc3
je 0x4133c4
xor eax, eax
jmp 0x4133c9
mov eax, 1
test eax, eax
je 0x413487
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x413418
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x413474
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
jmp 0x4138bb
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 5
cmp eax, ecx
jl 0x4134aa
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xba
jne 0x4134f1
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0xa
cmp eax, ecx
jl 0x4134d9
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xff
jne 0x4134f1
mov eax, 1
jmp 0x4134f3
xor eax, eax
test eax, eax
je 0x4138bb
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0xb
cmp eax, ecx
jl 0x413519
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x12
je 0x41355d
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0xb
cmp eax, ecx
jl 0x413548
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xd2
je 0x41355d
xor eax, eax
jmp 0x413562
mov eax, 1
test eax, eax
je 0x4138bb
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 0x41359e
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
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 0x4135d2
and eax, 0xff
jmp 0x41361d
cmp ecx, 0x80000201
jne 0x4135dd
cwde
jmp 0x41361d
cmp ecx, 0x80000301
je 0x41361d
cmp ecx, 0x80000401
je 0x41361d
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x41360d
cmp ecx, 0x80000601
je 0x413612
push 2
call fcn.00415a61
add esp, 4
fld dword [ebp - 0x60]
jmp 0x413618
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0xc
cmp eax, ecx
jl 0x413640
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x4137c4
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 0x413685
mov eax, 0x4a40da
push eax
push 3
mov ebx, 0x416f40
call fcn.00415a6d
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 0x4136b9
and eax, 0xff
jmp 0x413704
cmp ecx, 0x80000201
jne 0x4136c4
cwde
jmp 0x413704
cmp ecx, 0x80000301
je 0x413704
cmp ecx, 0x80000401
je 0x413704
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x4136f4
cmp ecx, 0x80000601
je 0x4136f9
push 2
call fcn.00415a61
add esp, 4
fld dword [ebp - 0x60]
jmp 0x4136ff
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401fb8
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x413750
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x4137ac
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
mov ebx, dword [ebp - 0x48]
call fcn.00401366
mov eax, 0xc
cmp eax, ecx
jl 0x4137e2
push 1
call fcn.00415a61
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x4138bb
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], 0
push 0x6cee60
push 4
mov eax, 2
call fcn.00415a4f
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x6cee60]
mov dword [ebp - 0x50], ebx
call fcn.00401366
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 0x41384c
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.00415a73
add esp, 8
mov dword [0x6cee60], 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.00415a5b
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 0x4138a8
push eax
mov ebx, eax
call fcn.00401091
inc eax
push eax
call fcn.00415a5b
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 0x4138bb
pop eax
pop ebx
pop ecx
jmp 0x411360
add esp, 0xc
mov dword [ebp - 0x4c], esp
push dword [ebp - 0x14]
mov eax, 0x48
call fcn.00415a67
cmp dword [ebp - 0x4c], esp
je 0x4138e8
push 6
call fcn.00415a61
add esp, 4
mov dword [ebp - 0x4c], esp
push dword [ebp - 0x10]
mov eax, 0x49
call fcn.00415a67
cmp dword [ebp - 0x4c], esp
je 0x41390a
push 6
call fcn.00415a61
add esp, 4
pop ebx
pop ecx
jmp 0x40f82a
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x413924
push ebx
call fcn.00415a55
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x41393b
push ebx
call fcn.00415a55
add esp, 4
pop ebx
call fcn.00415a55
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x413954
push ebx
call fcn.00415a55
add esp, 4
mov ebx, dword [ebp - 0x18]
push ebx
add ebx, 0x38
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00415a55
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00415a55
add esp, 4
pop ebx
call fcn.00415a55
add esp, 4
mov ebx, dword [ebp - 0x1c]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00415a55
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.00415a55
add esp, 4
pop ebx
call fcn.00415a55
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 0x4139d5
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4139d1
imul eax, dword [ebx]
jmp 0x4139c6
mov ecx, eax
test ecx, ecx
je 0x4139fd
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00415a55
add esp, 4
pop ebx
call fcn.00415a55
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4139db
call fcn.00415a55
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00415a55
add esp, 4
pop ebx
call fcn.00415a55
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00415a55
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.00415a55
add esp, 4
pop ebx
call fcn.00415a55
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 0x413a73
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x413a6f
imul eax, dword [ebx]
jmp 0x413a64
mov ecx, eax
test ecx, ecx
je 0x413a9b
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00415a55
add esp, 4
pop ebx
call fcn.00415a55
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x413a79
call fcn.00415a55
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00415a55
add esp, 4
pop ebx
call fcn.00415a55
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
call fcn.00415a55
add esp, 4
mov ebx, dword [ebp - 0x34]
push ebx
call fcn.00415a55
add esp, 4
mov ebx, dword [ebp - 0x38]
push ebx
call fcn.00415a55
add esp, 4
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.00415a55
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x413afc
push ebx
call fcn.00415a55
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x413b0c
push ebx
call fcn.00415a55
add esp, 4
mov esp, ebp
pop ebp
ret