Function at 0x4026cd
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.0041d6d4
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.0041d6d4
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.0041d6d4
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4896b0
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.0041d6d4
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4896b8
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.0041d6d4
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.0041d6d4
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.0041d6d4
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.0041d6d4
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.0041d6d4
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4896c0
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.0041d6d4
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.0041d6d4
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x489678
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 0x402824
pop ebx
add ebx, 4
push ebx
push 0x208
call fcn.0041d6d4
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4896c0
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.0041d6d4
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.0041d6d4
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.0041d6d4
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.0041d6d4
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.0041d6d4
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4896c0
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.0041d6d4
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.0041d6d4
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x489678
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 0x402942
pop ebx
add ebx, 4
push ebx
push 0x208
call fcn.0041d6d4
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4896c0
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.0041d6d4
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.0041d6d4
add esp, 4
mov dword [ebp - 0x34], eax
mov edi, eax
mov esi, 0x489634
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0041d6d4
add esp, 4
mov dword [ebp - 0x38], eax
mov edi, eax
mov esi, 0x489634
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0041d6d4
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x489634
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 [0x4ad1e0]
call fcn.0040107c
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0
jne 0x406b54
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x406b51
cmp dword [ebp - 4], 1
jne 0x402ac3
mov eax, 0x489642
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.004020b2
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x402aa6
push ebx
call fcn.0041d6ce
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x402aba
push ebx
call fcn.0041d6ce
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x402b5e
cmp dword [ebp - 4], 2
jne 0x402b0e
mov eax, 0x489653
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.004020b2
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x402af1
push ebx
call fcn.0041d6ce
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x402b05
push ebx
call fcn.0041d6ce
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x402b5e
cmp dword [ebp - 4], 3
jne 0x402b59
mov eax, 0x489665
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
call fcn.004020b2
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x402b3c
push ebx
call fcn.0041d6ce
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x402b50
push ebx
call fcn.0041d6ce
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x402b5e
jmp 0x406b54
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, 0x41f370
call fcn.0041d6e0
add esp, 0x10
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x402b9b
push ebx
call fcn.0041d6ce
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
call fcn.00406d50
mov dword [ebp - 0x4c], eax
push dword [ebp - 8]
push 0x489676
push dword [ebp - 0x4c]
mov ecx, 3
call fcn.00402671
add esp, 0xc
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x402bd2
push ebx
call fcn.0041d6ce
add esp, 4
mov dword [ebp - 0x54], esp
push 0
push dword [ebp - 0x10]
push dword [ebp - 0x50]
mov eax, 6
call fcn.0041d6e6
cmp dword [ebp - 0x54], esp
je 0x402bfc
push 6
call fcn.0041d6da
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x402c0c
push ebx
call fcn.0041d6ce
add esp, 4
mov dword [ebp - 0x4c], esp
push 0
push 0
push 3
push 0
push 1
push accept
push dword [ebp - 0x10]
mov eax, 7
call fcn.0041d6e6
cmp dword [ebp - 0x4c], esp
je 0x402c4c
push 6
call fcn.0041d6da
add esp, 4
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x406b06
mov dword [ebp - 0x4c], esp
push 0
push 0
push 0
push dword [ebp - 0x14]
mov eax, 8
call fcn.0041d6e6
cmp dword [ebp - 0x4c], esp
je 0x402c8a
push 6
call fcn.0041d6da
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.0041d6d4
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, 9
call fcn.0041d6e6
cmp dword [ebp - 0x4c], esp
je 0x402dc7
push 6
call fcn.0041d6da
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.0041d6c8
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 0x402e98
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x402e96
imul eax, dword [edi]
jmp 0x402e8b
mov ecx, eax
cmp ecx, 4
jle 0x402ea2
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.0041d6c8
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 0x402ef5
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x402ef3
imul eax, dword [edi]
jmp 0x402ee8
mov ecx, eax
cmp ecx, 0xa
jle 0x402eff
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.0041d6ce
add esp, 4
pop eax
test eax, eax
je 0x402f43
mov ebx, dword [ebp - 0x18]
mov dword [ebp - 0x60], ebx
mov ebx, dword [ebp - 0x60]
cmp word [ebx], 0x5a4d
jne 0x402f43
mov eax, 1
jmp 0x402f45
xor eax, eax
test eax, eax
je 0x406b06
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, 8
call fcn.0041d6e6
cmp dword [ebp - 0x50], esp
je 0x402f87
push 6
call fcn.0041d6da
add esp, 4
mov eax, dword [ebp - 0x20]
push eax
push 0x14
call fcn.0041d6d4
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.0041d6d4
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.0041d6d4
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.0041d6d4
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.00401095
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0041d6d4
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 0x403068
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x28
call fcn.0041d6d4
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.00401095
pop eax
sub ebx, eax
add ecx, ebx
push ecx
call fcn.0041d6d4
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 0x40301e
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.00401095
pop eax
sub ebx, eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0041d6d4
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.0041d6ce
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.0041d6ce
add esp, 4
pop ebx
call fcn.0041d6ce
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 0x4030e5
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4030e1
imul eax, dword [ebx]
jmp 0x4030d6
mov ecx, eax
test ecx, ecx
je 0x40310d
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041d6ce
add esp, 4
pop ebx
call fcn.0041d6ce
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4030eb
call fcn.0041d6ce
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041d6ce
add esp, 4
pop ebx
call fcn.0041d6ce
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.0041d6d4
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 0x40344e
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, 0xa
call fcn.0041d6e6
cmp dword [ebp - 0x4c], esp
je 0x403509
push 6
call fcn.0041d6da
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.0041d6c8
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 0x403845
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x403843
imul eax, dword [edi]
jmp 0x403838
mov ecx, eax
cmp ecx, 8
jle 0x40384f
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 0x403811
pop edi
add edi, 4
push ebx
push edi
push 4
mov eax, 2
call fcn.0041d6c8
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 0x4038fd
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x4038fb
imul eax, dword [edi]
jmp 0x4038f0
mov ecx, eax
cmp ecx, 0x80
jle 0x40390a
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.0041d6ce
add esp, 4
pop eax
test eax, eax
je 0x403946
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x60], ebx
mov ebx, dword [ebp - 0x60]
cmp dword [ebx], 0x4550
jne 0x403946
mov eax, 1
jmp 0x403948
xor eax, eax
test eax, eax
je 0x406b06
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 0x403985
push 0xa
call fcn.0041d6da
add esp, 4
mov dword [ebp - 0x54], eax
lea ebx, [ebp - 0x58]
call fcn.00401095
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0041d6d4
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.00401095
pop edx
test ecx, ecx
je 0x4039ec
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041d6ce
add esp, 4
pop ebx
call fcn.0041d6ce
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x4039c8
pop edx
pop edi
test edx, edx
je 0x403a3e
mov ebx, edi
push edx
push ebx
push 0x28
call fcn.0041d6d4
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.0041d6d4
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x489678
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 0x4039f6
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
call fcn.0041d6ce
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 0x403a86
push 0xa
call fcn.0041d6da
add esp, 4
mov dword [ebp - 0x54], eax
lea ebx, [ebp - 0x58]
call fcn.00401095
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0041d6d4
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.00401095
pop edx
test edx, edx
je 0x403acd
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
mov ebx, dword [ebp - 0x4c]
push dword [ebx]
call fcn.0041d6ce
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 [0x489680]
fstp qword [ebp - 0x5c]
mov dword [ebp - 0x60], esp
push 1
push 0
fld qword [ebp - 0x5c]
call fcn.00401055
push eax
push dword [ebp - 0x14]
mov eax, 8
call fcn.0041d6e6
cmp dword [ebp - 0x60], esp
je 0x403b3d
push 6
call fcn.0041d6da
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 [0x489688]
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.00401055
push eax
mov ebx, dword [ebp - 0x4c]
mov ebx, dword [ebx]
call fcn.00401095
push ebx
mov dword [ebp - 0x6c], ecx
test ecx, ecx
jne 0x403ba1
xor eax, eax
jmp 0x403bad
imul ecx, ecx, 0x28
push ecx
call fcn.0041d6d4
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 0x403c50
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 0x403c50
add ebx, 4
add edi, 0x28
jmp 0x403bc2
push dword [ebp - 0x14]
mov eax, 0xb
call fcn.0041d6e6
cmp dword [ebp - 0x64], esp
je 0x403c6f
push 6
call fcn.0041d6da
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 0x403d3f
push ecx
push edi
push ebx
mov edi, dword [edi]
push ebx
push edi
push 1
mov eax, 2
call fcn.0041d6c8
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 0x403cb6
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x403cb4
imul eax, dword [edi]
jmp 0x403ca9
mov ecx, eax
cmp ecx, 8
jle 0x403cc0
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 0x403d3f
add ebx, 0x28
add edi, 4
jmp 0x403c82
call fcn.0041d6ce
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 0x403e5b
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0x10]
call fcn.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x403d92
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403da5
push 1
call fcn.0041d6da
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.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x403dcd
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403de0
push 1
call fcn.0041d6da
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.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x403e0d
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403e20
push 1
call fcn.0041d6da
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.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
pop eax
pop ebx
pop ecx
jmp 0x403d64
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 0x404021
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x403ebc
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403ecf
push 1
call fcn.0041d6da
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 0x403fa7
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x403f0a
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403f1d
push 1
call fcn.0041d6da
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.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x403f4a
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403f5d
push 1
call fcn.0041d6da
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 [0x489690]
fnstsw ax
test ah, 0x41
je 0x403fa7
mov eax, 1
jmp 0x403fa9
xor eax, eax
test eax, eax
je 0x404019
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0x10]
call fcn.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x403fd1
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403fe4
push 1
call fcn.0041d6da
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.00401055
mov dword [ebp - 0x28], eax
jmp 0x404021
pop eax
pop ebx
pop ecx
jmp 0x403e8e
add esp, 0xc
cmp dword [ebp - 0x28], 0
jle 0x406b06
mov dword [ebp - 0x4c], esp
push 0
push 0
push dword [ebp - 0x28]
push dword [ebp - 0x14]
mov eax, 8
call fcn.0041d6e6
cmp dword [ebp - 0x4c], esp
je 0x40405d
push 6
call fcn.0041d6da
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.0041d6d4
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, 0xc
call fcn.0041d6e6
cmp dword [ebp - 0x4c], esp
je 0x404120
push 6
call fcn.0041d6da
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.0041d6ce
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.00401055
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 0x4041fe
push 0xa
call fcn.0041d6da
add esp, 4
mov dword [ebp - 0x50], eax
lea ebx, [ebp - 0x54]
call fcn.00401095
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0041d6d4
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.00401095
pop edx
test edx, edx
je 0x404243
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
push dword [ebp - 0x34]
call fcn.0041d6ce
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, 8
call fcn.0041d6e6
cmp dword [ebp - 0x50], esp
je 0x40428c
push 6
call fcn.0041d6da
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 [0x489698]
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.00401055
push eax
mov ebx, dword [ebp - 0x34]
call fcn.00401095
push ebx
push dword [ebp - 0x14]
mov eax, 0xd
call fcn.0041d6e6
cmp dword [ebp - 0x60], esp
je 0x4042ee
push 6
call fcn.0041d6da
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.00401055
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 0x40434b
push 0xa
call fcn.0041d6da
add esp, 4
mov dword [ebp - 0x50], eax
lea ebx, [ebp - 0x54]
call fcn.00401095
push ecx
shl ecx, 1
add ecx, 8
push ecx
call fcn.0041d6d4
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.00401095
pop edx
test edx, edx
je 0x404391
mov ecx, edx
xor eax, eax
shl ecx, 1
rep stosb byte es:[edi], al
push dword [ebp - 0x38]
call fcn.0041d6ce
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, 8
call fcn.0041d6e6
cmp dword [ebp - 0x50], esp
je 0x4043da
push 6
call fcn.0041d6da
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 [0x4896a0]
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.00401055
push eax
mov ebx, dword [ebp - 0x38]
call fcn.00401095
push ebx
push dword [ebp - 0x14]
mov eax, 0xe
call fcn.0041d6e6
cmp dword [ebp - 0x60], esp
je 0x40443c
push 6
call fcn.0041d6da
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.00401055
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 0x404499
push 0xa
call fcn.0041d6da
add esp, 4
mov dword [ebp - 0x50], eax
lea ebx, [ebp - 0x54]
call fcn.00401095
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0041d6d4
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.00401095
pop edx
test edx, edx
je 0x4044de
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
push dword [ebp - 0x3c]
call fcn.0041d6ce
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, 8
call fcn.0041d6e6
cmp dword [ebp - 0x50], esp
je 0x404527
push 6
call fcn.0041d6da
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 [0x489698]
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.00401055
push eax
mov ebx, dword [ebp - 0x3c]
call fcn.00401095
push ebx
push dword [ebp - 0x14]
mov eax, 0xd
call fcn.0041d6e6
cmp dword [ebp - 0x60], esp
je 0x404589
push 6
call fcn.0041d6da
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 0x406b03
push 0x80000301
push 0
push 0x80
push 1
mov ebx, 0x41eda0
call fcn.0041d6e0
add esp, 0x10
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4045e3
push ebx
call fcn.0041d6ce
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
call fcn.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x404604
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404617
push 1
call fcn.0041d6da
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x3c]
call fcn.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x40463c
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40464f
push 1
call fcn.0041d6da
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.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x3c]
call fcn.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x404698
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4046ab
push 1
call fcn.0041d6da
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, 8
call fcn.0041d6e6
cmp dword [ebp - 0x50], esp
je 0x4046e4
push 6
call fcn.0041d6da
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 0x404707
add eax, 8
push eax
push dword [ebp - 0x14]
mov eax, 0xf
call fcn.0041d6e6
cmp dword [ebp - 0x4c], esp
je 0x404727
push 6
call fcn.0041d6da
add esp, 4
cmp dword [ebp - 4], 1
jne 0x4047a5
mov ebx, dword [ebp - 0x40]
call fcn.00401095
mov eax, 0
cmp eax, ecx
jl 0x40474f
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x5a
jne 0x404793
mov ebx, dword [ebp - 0x40]
call fcn.00401095
mov eax, 1
cmp eax, ecx
jl 0x40477e
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x77
jne 0x404793
xor eax, eax
jmp 0x404798
mov eax, 1
test eax, eax
je 0x4047a5
jmp 0x406afb
mov ebx, dword [ebp - 0x34]
call fcn.00401095
push ebx
push ecx
mov ebx, dword [ebp - 0x38]
call fcn.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x4047cc
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4047df
push 1
call fcn.0041d6da
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 [0x489608]
fstp qword [ebp - 0x5c]
fld qword [ebp - 0x5c]
call fcn.00401055
dec eax
jns 0x40481a
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40482d
push 1
call fcn.0041d6da
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 0x40484c
jmp 0x406afb
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 0x4049f5
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x404896
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4048a9
push 1
call fcn.0041d6da
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 0x404981
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0xc]
call fcn.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x4048e4
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4048f7
push 1
call fcn.0041d6da
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.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x404924
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404937
push 1
call fcn.0041d6da
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 [0x489690]
fnstsw ax
test ah, 0x41
je 0x404981
mov eax, 1
jmp 0x404983
xor eax, eax
test eax, eax
je 0x4049ed
mov ebx, dword [ebp - 0x1c]
mov ebx, dword [ebx + 0x10]
call fcn.00401095
push ebx
push ecx
mov eax, dword [ebp - 0x24]
dec eax
jns 0x4049ab
push 4
call fcn.0041d6da
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4049be
push 1
call fcn.0041d6da
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.00401055
mov dword [ebp - 0x44], eax
jmp 0x4049f5
pop eax
pop ebx
pop ecx
jmp 0x404868
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 0x404a19
jmp 0x406afb
push 0x80000301
push 0
push 0x20
push 1
mov ebx, 0x41eda0
call fcn.0041d6e0
add esp, 0x10
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x404a4e
push ebx
call fcn.0041d6ce
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, 8
call fcn.0041d6e6
cmp dword [ebp - 0x4c], esp
je 0x404a81
push 6
call fcn.0041d6da
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 0x404aa4
add eax, 8
push eax
push dword [ebp - 0x14]
mov eax, 0xf
call fcn.0041d6e6
cmp dword [ebp - 0x4c], esp
je 0x404ac4
push 6
call fcn.0041d6da
add esp, 4
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0
cmp eax, ecx
jl 0x404ae2
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xb8
je 0x404af8
jmp 0x406afb
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 0x404b14
mov eax, 0x489634
push eax
push 1
mov ebx, 0x41f0e0
call fcn.0041d6e0
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 0x404b40
push ebx
call fcn.0041d6ce
add esp, 4
pop eax
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [0x4ad1e4]
add ebx, 4
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp dword [ebx], 5
jne 0x404b7d
mov ebx, dword [0x4ad1e4]
add ebx, 8
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp dword [ebx], 0
jne 0x404b7d
mov eax, 1
jmp 0x404b7f
xor eax, eax
test eax, eax
je 0x40538b
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 9
cmp eax, ecx
jl 0x404ba5
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xcd
jne 0x404bec
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0xa
cmp eax, ecx
jl 0x404bd4
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x2e
jne 0x404bec
mov eax, 1
jmp 0x404bee
xor eax, eax
test eax, eax
je 0x405386
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 0x404c2a
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x404c5e
and eax, 0xff
jmp 0x404ca9
cmp ecx, 0x80000201
jne 0x404c69
cwde
jmp 0x404ca9
cmp ecx, 0x80000301
je 0x404ca9
cmp ecx, 0x80000401
je 0x404ca9
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x404c99
cmp ecx, 0x80000601
je 0x404c9e
push 2
call fcn.0041d6da
add esp, 4
fld dword [ebp - 0x60]
jmp 0x404ca4
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0xb
cmp eax, ecx
jl 0x404ccc
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x404e50
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 0x404d11
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x404d45
and eax, 0xff
jmp 0x404d90
cmp ecx, 0x80000201
jne 0x404d50
cwde
jmp 0x404d90
cmp ecx, 0x80000301
je 0x404d90
cmp ecx, 0x80000401
je 0x404d90
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x404d80
cmp ecx, 0x80000601
je 0x404d85
push 2
call fcn.0041d6da
add esp, 4
fld dword [ebp - 0x60]
jmp 0x404d8b
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x404ddc
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x404e38
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0xb
cmp eax, ecx
jl 0x404e6e
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x404f4c
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], 0
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x404ed8
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x404f34
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0xb
cmp eax, ecx
jl 0x404f6a
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xe9
jne 0x405386
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 0x404fa6
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x404fe3
and eax, 0xff
jmp 0x405009
cmp ecx, 0x80000201
jne 0x404fee
cwde
jmp 0x405009
mov dword [ebp - 0x64], eax
cmp ecx, 0x80000301
je 0x40500c
cmp ecx, 0x80000401
jne 0x405011
mov dword [ebp - 0x60], edx
fild qword [ebp - 0x64]
jmp 0x405033
mov dword [ebp - 0x64], eax
fild dword [ebp - 0x64]
jmp 0x405033
cmp ecx, 0x80000501
jne 0x40501e
fld dword [ebp - 0x64]
jmp 0x405033
cmp ecx, 0x80000601
je 0x40503c
push 2
call fcn.0041d6da
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 [0x4896a8]
fstp qword [ebp - 0x6c]
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0x80000004
je 0x405065
cmp ecx, reloc.WS2_32.dll_getpeername
jne 0x405075
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x405075
push ebx
call fcn.0041d6ce
add esp, 4
mov dword [ebp - 0x70], esp
push 0
push 0
fld qword [ebp - 0x6c]
call fcn.00401055
push eax
push dword [ebp - 0x14]
mov eax, 8
call fcn.0041d6e6
cmp dword [ebp - 0x70], esp
je 0x4050aa
push 6
call fcn.0041d6da
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 0x4050cd
add eax, 8
push eax
push dword [ebp - 0x14]
mov eax, 0xf
call fcn.0041d6e6
cmp dword [ebp - 0x4c], esp
je 0x4050ed
push 6
call fcn.0041d6da
add esp, 4
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0
cmp eax, ecx
jl 0x40510b
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x40528f
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 0x405150
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x405184
and eax, 0xff
jmp 0x4051cf
cmp ecx, 0x80000201
jne 0x40518f
cwde
jmp 0x4051cf
cmp ecx, 0x80000301
je 0x4051cf
cmp ecx, 0x80000401
je 0x4051cf
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x4051bf
cmp ecx, 0x80000601
je 0x4051c4
push 2
call fcn.0041d6da
add esp, 4
fld dword [ebp - 0x60]
jmp 0x4051ca
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x40521b
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x405277
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0
cmp eax, ecx
jl 0x4052ad
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x405386
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], 0
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x405317
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x405373
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
jmp 0x406afb
mov ebx, dword [0x4ad1e4]
add ebx, 0x1c
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp dword [ebx], 0
je 0x4066cc
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 0x4053d7
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x40540b
and eax, 0xff
jmp 0x405456
cmp ecx, 0x80000201
jne 0x405416
cwde
jmp 0x405456
cmp ecx, 0x80000301
je 0x405456
cmp ecx, 0x80000401
je 0x405456
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x405446
cmp ecx, 0x80000601
je 0x40544b
push 2
call fcn.0041d6da
add esp, 4
fld dword [ebp - 0x60]
jmp 0x405451
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401055
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.00401095
mov eax, 5
cmp eax, ecx
jl 0x40549d
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x8d
jne 0x405513
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 9
cmp eax, ecx
jl 0x4054cc
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xb9
jne 0x405513
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0xe
cmp eax, ecx
jl 0x4054fb
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x405513
mov eax, 1
jmp 0x405515
xor eax, eax
test eax, eax
je 0x405873
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 0x405551
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x405585
and eax, 0xff
jmp 0x4055d0
cmp ecx, 0x80000201
jne 0x405590
cwde
jmp 0x4055d0
cmp ecx, 0x80000301
je 0x4055d0
cmp ecx, 0x80000401
je 0x4055d0
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x4055c0
cmp ecx, 0x80000601
je 0x4055c5
push 2
call fcn.0041d6da
add esp, 4
fld dword [ebp - 0x60]
jmp 0x4055cb
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0x15
cmp eax, ecx
jl 0x4055f3
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x405777
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 0x405638
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x40566c
and eax, 0xff
jmp 0x4056b7
cmp ecx, 0x80000201
jne 0x405677
cwde
jmp 0x4056b7
cmp ecx, 0x80000301
je 0x4056b7
cmp ecx, 0x80000401
je 0x4056b7
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x4056a7
cmp ecx, 0x80000601
je 0x4056ac
push 2
call fcn.0041d6da
add esp, 4
fld dword [ebp - 0x60]
jmp 0x4056b2
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x405703
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x40575f
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0x15
cmp eax, ecx
jl 0x405795
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x405861
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x4057ed
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x405849
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
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.00401095
mov eax, 5
cmp eax, ecx
jl 0x405891
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x8d
jne 0x405907
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 9
cmp eax, ecx
jl 0x4058c0
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x33
jne 0x405907
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0xe
cmp eax, ecx
jl 0x4058ef
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x405907
mov eax, 1
jmp 0x405909
xor eax, eax
test eax, eax
je 0x405bd8
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0x12
cmp eax, ecx
jl 0x40592f
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x405ab3
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 0x405974
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x4059a8
and eax, 0xff
jmp 0x4059f3
cmp ecx, 0x80000201
jne 0x4059b3
cwde
jmp 0x4059f3
cmp ecx, 0x80000301
je 0x4059f3
cmp ecx, 0x80000401
je 0x4059f3
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x4059e3
cmp ecx, 0x80000601
je 0x4059e8
push 2
call fcn.0041d6da
add esp, 4
fld dword [ebp - 0x60]
jmp 0x4059ee
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x405a3f
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x405a9b
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0x15
cmp eax, ecx
jl 0x405ad1
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x405b15
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0x12
cmp eax, ecx
jl 0x405b00
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc3
je 0x405b15
xor eax, eax
jmp 0x405b1a
mov eax, 1
test eax, eax
je 0x405bd8
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x405b69
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x405bc5
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 5
cmp eax, ecx
jl 0x405bf6
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xb9
jne 0x405c6c
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0xa
cmp eax, ecx
jl 0x405c25
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x8d
jne 0x405c6c
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0xe
cmp eax, ecx
jl 0x405c54
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x405c6c
mov eax, 1
jmp 0x405c6e
xor eax, eax
test eax, eax
je 0x4061ae
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 0x405caa
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x405cde
and eax, 0xff
jmp 0x405d29
cmp ecx, 0x80000201
jne 0x405ce9
cwde
jmp 0x405d29
cmp ecx, 0x80000301
je 0x405d29
cmp ecx, 0x80000401
je 0x405d29
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x405d19
cmp ecx, 0x80000601
je 0x405d1e
push 2
call fcn.0041d6da
add esp, 4
fld dword [ebp - 0x60]
jmp 0x405d24
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0x18
cmp eax, ecx
jl 0x405d4c
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x405ed0
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 0x405d91
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x405dc5
and eax, 0xff
jmp 0x405e10
cmp ecx, 0x80000201
jne 0x405dd0
cwde
jmp 0x405e10
cmp ecx, 0x80000301
je 0x405e10
cmp ecx, 0x80000401
je 0x405e10
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x405e00
cmp ecx, 0x80000601
je 0x405e05
push 2
call fcn.0041d6da
add esp, 4
fld dword [ebp - 0x60]
jmp 0x405e0b
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x405e5c
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x405eb8
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0x15
cmp eax, ecx
jl 0x405eee
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x406072
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 0x405f33
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x405f67
and eax, 0xff
jmp 0x405fb2
cmp ecx, 0x80000201
jne 0x405f72
cwde
jmp 0x405fb2
cmp ecx, 0x80000301
je 0x405fb2
cmp ecx, 0x80000401
je 0x405fb2
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x405fa2
cmp ecx, 0x80000601
je 0x405fa7
push 2
call fcn.0041d6da
add esp, 4
fld dword [ebp - 0x60]
jmp 0x405fad
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x405ffe
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x40605a
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0x18
cmp eax, ecx
jl 0x406090
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x4060d4
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0x15
cmp eax, ecx
jl 0x4060bf
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc3
je 0x4060d4
xor eax, eax
jmp 0x4060d9
mov eax, 1
test eax, eax
je 0x40619c
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x406128
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x406184
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
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.00401095
mov eax, 5
cmp eax, ecx
jl 0x4061cc
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x33
jne 0x406242
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 7
cmp eax, ecx
jl 0x4061fb
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0x8d
jne 0x406242
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0xb
cmp eax, ecx
jl 0x40622a
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x5c], ebx
mov ebx, dword [ebp - 0x5c]
cmp byte [ebx], 0x64
jne 0x406242
mov eax, 1
jmp 0x406244
xor eax, eax
test eax, eax
je 0x4066c7
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.00401095
mov eax, 0x15
cmp eax, ecx
jl 0x40627c
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x406400
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 0x4062c1
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x4062f5
and eax, 0xff
jmp 0x406340
cmp ecx, 0x80000201
jne 0x406300
cwde
jmp 0x406340
cmp ecx, 0x80000301
je 0x406340
cmp ecx, 0x80000401
je 0x406340
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x406330
cmp ecx, 0x80000601
je 0x406335
push 2
call fcn.0041d6da
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40633b
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x40638c
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x4063e8
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0x12
cmp eax, ecx
jl 0x40641e
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x4065a2
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 0x406463
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x406497
and eax, 0xff
jmp 0x4064e2
cmp ecx, 0x80000201
jne 0x4064a2
cwde
jmp 0x4064e2
cmp ecx, 0x80000301
je 0x4064e2
cmp ecx, 0x80000401
je 0x4064e2
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x4064d2
cmp ecx, 0x80000601
je 0x4064d7
push 2
call fcn.0041d6da
add esp, 4
fld dword [ebp - 0x60]
jmp 0x4064dd
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x40652e
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x40658a
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0x15
cmp eax, ecx
jl 0x4065c0
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
je 0x406604
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0x12
cmp eax, ecx
jl 0x4065ef
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xc3
je 0x406604
xor eax, eax
jmp 0x406609
mov eax, 1
test eax, eax
je 0x4066c7
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x406658
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x4066b4
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
jmp 0x406afb
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 5
cmp eax, ecx
jl 0x4066ea
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xba
jne 0x406731
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0xa
cmp eax, ecx
jl 0x406719
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xff
jne 0x406731
mov eax, 1
jmp 0x406733
xor eax, eax
test eax, eax
je 0x406afb
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0xb
cmp eax, ecx
jl 0x406759
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x12
je 0x40679d
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0xb
cmp eax, ecx
jl 0x406788
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x54], ebx
mov ebx, dword [ebp - 0x54]
cmp byte [ebx], 0xd2
je 0x40679d
xor eax, eax
jmp 0x4067a2
mov eax, 1
test eax, eax
je 0x406afb
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 0x4067de
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x406812
and eax, 0xff
jmp 0x40685d
cmp ecx, 0x80000201
jne 0x40681d
cwde
jmp 0x40685d
cmp ecx, 0x80000301
je 0x40685d
cmp ecx, 0x80000401
je 0x40685d
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x40684d
cmp ecx, 0x80000601
je 0x406852
push 2
call fcn.0041d6da
add esp, 4
fld dword [ebp - 0x60]
jmp 0x406858
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0xc
cmp eax, ecx
jl 0x406880
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc2
jne 0x406a04
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 0x4068c5
mov eax, 0x489634
push eax
push 3
mov ebx, 0x41ea30
call fcn.0041d6e0
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 0x4068f9
and eax, 0xff
jmp 0x406944
cmp ecx, 0x80000201
jne 0x406904
cwde
jmp 0x406944
cmp ecx, 0x80000301
je 0x406944
cmp ecx, 0x80000401
je 0x406944
mov dword [ebp - 0x60], eax
cmp ecx, 0x80000501
je 0x406934
cmp ecx, 0x80000601
je 0x406939
push 2
call fcn.0041d6da
add esp, 4
fld dword [ebp - 0x60]
jmp 0x40693f
mov dword [ebp - 0x5c], edx
fld qword [ebp - 0x60]
call fcn.00401055
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], eax
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x406990
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x4069ec
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
mov ebx, dword [ebp - 0x48]
call fcn.00401095
mov eax, 0xc
cmp eax, ecx
jl 0x406a22
push 1
call fcn.0041d6da
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc3
jne 0x406afb
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
mov dword [ebx], 0
push 0x4ad1e0
push 4
mov eax, 2
call fcn.0041d6c8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c], eax
mov ebx, dword [0x4ad1e0]
mov dword [ebp - 0x50], ebx
call fcn.00401095
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 0x406a8c
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.0041d6f2
add esp, 8
mov dword [0x4ad1e0], 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.0041d6d4
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 0x406ae8
push eax
mov ebx, eax
call fcn.00401593
inc eax
push eax
call fcn.0041d6d4
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 0x406afb
pop eax
pop ebx
pop ecx
jmp 0x4045a0
add esp, 0xc
mov dword [ebp - 0x4c], esp
push dword [ebp - 0x14]
mov eax, 0x10
call fcn.0041d6e6
cmp dword [ebp - 0x4c], esp
je 0x406b28
push 6
call fcn.0041d6da
add esp, 4
mov dword [ebp - 0x4c], esp
push dword [ebp - 0x10]
mov eax, 0x11
call fcn.0041d6e6
cmp dword [ebp - 0x4c], esp
je 0x406b4a
push 6
call fcn.0041d6da
add esp, 4
pop ebx
pop ecx
jmp 0x402a6a
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406b64
push ebx
call fcn.0041d6ce
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406b7b
push ebx
call fcn.0041d6ce
add esp, 4
pop ebx
call fcn.0041d6ce
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x406b94
push ebx
call fcn.0041d6ce
add esp, 4
mov ebx, dword [ebp - 0x18]
push ebx
add ebx, 0x38
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041d6ce
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041d6ce
add esp, 4
pop ebx
call fcn.0041d6ce
add esp, 4
mov ebx, dword [ebp - 0x1c]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041d6ce
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.0041d6ce
add esp, 4
pop ebx
call fcn.0041d6ce
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 0x406c15
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x406c11
imul eax, dword [ebx]
jmp 0x406c06
mov ecx, eax
test ecx, ecx
je 0x406c3d
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041d6ce
add esp, 4
pop ebx
call fcn.0041d6ce
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x406c1b
call fcn.0041d6ce
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041d6ce
add esp, 4
pop ebx
call fcn.0041d6ce
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041d6ce
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.0041d6ce
add esp, 4
pop ebx
call fcn.0041d6ce
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 0x406cb3
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x406caf
imul eax, dword [ebx]
jmp 0x406ca4
mov ecx, eax
test ecx, ecx
je 0x406cdb
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041d6ce
add esp, 4
pop ebx
call fcn.0041d6ce
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x406cb9
call fcn.0041d6ce
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0041d6ce
add esp, 4
pop ebx
call fcn.0041d6ce
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
call fcn.0041d6ce
add esp, 4
mov ebx, dword [ebp - 0x34]
push ebx
call fcn.0041d6ce
add esp, 4
mov ebx, dword [ebp - 0x38]
push ebx
call fcn.0041d6ce
add esp, 4
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0041d6ce
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x406d3c
push ebx
call fcn.0041d6ce
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x406d4c
push ebx
call fcn.0041d6ce
add esp, 4
mov esp, ebp
pop ebp
ret