Function at 0x1001f337
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
push 0x14
call fcn.1002951f
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
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
push 0x6c
call fcn.1002951f
add esp, 4
mov dword [ebp - 0x20], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x1b
rep stosd dword es:[edi], eax
add ebx, 0x68
push ebx
push 0x88
call fcn.1002951f
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x1026f705
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x20
rep stosd dword es:[edi], eax
mov dword [ebp - 0x24], 0
push 8
call fcn.1002951f
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x100f81c2
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x2c], 0
push 8
call fcn.1002951f
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x100f81c2
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
mov ebx, dword [0x1036da28]
call fcn.10004a7e
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x100223ce
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x100223cb
cmp dword [ebp - 4], 1
jne 0x1001f474
mov eax, 0x1026f675
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x1001f46b
push ebx
call fcn.10029519
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x1001f4cb
cmp dword [ebp - 4], 2
jne 0x1001f49d
mov eax, 0x100f860e
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x1001f494
push ebx
call fcn.10029519
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x1001f4cb
cmp dword [ebp - 4], 3
jne 0x1001f4c6
mov eax, str.gdi32.dll
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x1001f4bd
push ebx
call fcn.10029519
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x1001f4cb
jmp 0x100223ce
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0x3c], ebx
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 1
lea eax, [ebp - 8]
push eax
call fcn.10022519
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x3c], 0
push 0
lea eax, [ebp - 0x3c]
push eax
mov dword [ebp - 0x40], 0
push 0
lea eax, [ebp - 0x40]
push eax
call fcn.10022537
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x1001f519
push ebx
call fcn.10029519
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x1001f529
push ebx
call fcn.10029519
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x1001f53d
push ebx
call fcn.10029519
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.1002264c
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push 0x1026f5e8
push dword [ebp - 0x3c]
mov ecx, 3
call fcn.10001a5d
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x1001f574
push ebx
call fcn.10029519
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
mov eax, 0x69
call fcn.10029531
cmp dword [ebp - 0x44], esp
je 0x1001f59e
push 6
call fcn.10029525
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x1001f5ae
push ebx
call fcn.10029519
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x1001f5c1
mov eax, 0x100f80e5
push eax
push 1
mov ebx, 0x1002b8d0
call fcn.1002952b
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x1001f5eb
push ebx
call fcn.10029519
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100226f3
mov dword [ebp - 0x1c], eax
push getpeername
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x1001f60e
mov eax, 0x100f80e5
push eax
push 1
mov ebx, 0x1002b870
call fcn.1002952b
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.10022717
test eax, eax
je 0x1001f657
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x1001f657
mov eax, 1
jmp 0x1001f659
xor eax, eax
test eax, eax
je 0x100223c4
mov dword [ebp - 0x24], 0
mov ebx, dword [ebp - 0x20]
add ebx, 0x3c
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov dword [ebp - 0x44], 0
push 0
push dword [ebp - 0x44]
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
mov dword [ebp - 0x4c], 0
push 0
push dword [ebp - 0x4c]
push 0x2000
push 0x1000
call fcn.10022afa
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], esp
push 0x40
push dword [ebp - 0x50]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push 0
push 0xffffffff
mov eax, 0x6a
call fcn.10029531
cmp dword [ebp - 0x54], esp
je 0x1001f6e9
push 6
call fcn.10029525
add esp, 4
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
add ebx, 0x40
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push dword [ebp - 0x1c]
push dword [ebp - 0x24]
call fcn.10022b1d
push 8
call fcn.1002951f
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x100f81c2
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x1c]
call fcn.10022d4f
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.10029519
add esp, 4
mov eax, dword [ebp - 0x40]
xor ecx, ecx
push eax
lea eax, [ebp - 0x2c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x1001f87a
mov ebx, dword [ebp - 0x28]
call fcn.10001b98
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x1001f784
push 4
call fcn.10029525
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x1001f797
push 1
call fcn.10029525
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push dword [ebp - 0x24]
call fcn.1001efc0
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
call fcn.10001b98
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x1001f7dd
push 4
call fcn.10029525
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x1001f7f0
push 1
call fcn.10029525
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x4c], 0
push 0
push dword [ebp - 0x4c]
mov ebx, dword [ebp - 0x48]
push dword [ebx]
push dword [ebp - 0x1c]
call fcn.1001efc0
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
call fcn.10001b98
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x1001f836
push 4
call fcn.10029525
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x1001f849
push 1
call fcn.10029525
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov ebx, dword [ebp - 0x54]
push dword [ebx]
push dword [ebp - 0x50]
push dword [ebp - 0x44]
call fcn.10022b1d
pop eax
pop ebx
pop ecx
jmp 0x1001f759
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.10023424
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x1001f8a8
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x1001f8a4
imul eax, dword [ebx]
jmp 0x1001f899
mov ecx, eax
test ecx, ecx
je 0x1001f8d0
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.10029519
add esp, 4
pop ebx
call fcn.10029519
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x1001f8ae
call fcn.10029519
add esp, 4
mov eax, 0x100f81c2
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.1002450a
xor ecx, ecx
push eax
lea eax, [ebp - 0x2c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x100223a8
cmp dword [ebp - 4], 1
jne 0x1001fa1f
mov ebx, dword [ebp - 0x30]
call fcn.10001b98
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x1001f92a
push 4
call fcn.10029525
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x1001f93d
push 1
call fcn.10029525
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 1
push getpeername
push 0
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebx]
test eax, eax
jne 0x1001f96b
mov eax, 0x100f80e5
push eax
push 2
mov ebx, 0x10029e00
call fcn.1002952b
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x1001fa0d
mov ebx, dword [ebp - 0x30]
call fcn.10001b98
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x1001f9a8
push 4
call fcn.10029525
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x1001f9bb
push 1
call fcn.10029525
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 2
push getpeername
push 0
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
test eax, eax
jne 0x1001f9e9
mov eax, 0x100f80e5
push eax
push 2
mov ebx, 0x10029e00
call fcn.1002952b
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x1001fa0d
xor eax, eax
jmp 0x1001fa12
mov eax, 1
test eax, eax
je 0x1001fa1f
jmp 0x100223a0
mov ebx, dword [ebp - 0x30]
call fcn.10001b98
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x1001fa3c
push 4
call fcn.10029525
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x1001fa4f
push 1
call fcn.10029525
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x3c], ebx
push 8
call fcn.1002951f
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x100f81c2
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x40]
push eax
push 0x20
lea eax, [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
call fcn.10025019
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.10029519
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x1001fadf
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0
cmp eax, ecx
jl 0x1001fac7
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x1001fadf
mov eax, 1
jmp 0x1001fae1
xor eax, eax
test eax, eax
je 0x100223a0
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
call fcn.10001b98
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x1001fb0f
push 4
call fcn.10029525
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x1001fb22
push 1
call fcn.10029525
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
mov eax, dword [ebx]
test eax, eax
je 0x1001fb4d
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x1001fb60
push ebx
call fcn.10029519
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0xc]
add ebx, 8
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x1001fbac
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x1001fbe0
and eax, 0xff
jmp 0x1001fc2b
cmp ecx, 0x80000201
jne 0x1001fbeb
cwde
jmp 0x1001fc2b
cmp ecx, 0x80000301
je 0x1001fc2b
cmp ecx, 0x80000401
je 0x1001fc2b
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x1001fc1b
cmp ecx, 0x80000601
je 0x1001fc20
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x1001fc26
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0x1036d9fc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x1001fc67
mov ebx, dword [0x1036d9fc]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x1001fc67
mov eax, 1
jmp 0x1001fc69
xor eax, eax
test eax, eax
je 0x10020343
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 9
cmp eax, ecx
jl 0x1001fc8f
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x1001fcd6
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xa
cmp eax, ecx
jl 0x1001fcbe
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x1001fcd6
mov eax, 1
jmp 0x1001fcd8
xor eax, eax
test eax, eax
je 0x1002033e
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xb
cmp eax, ecx
jl 0x1001fcfe
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x1001fe82
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x1001fd43
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x1001fd77
and eax, 0xff
jmp 0x1001fdc2
cmp ecx, 0x80000201
jne 0x1001fd82
cwde
jmp 0x1001fdc2
cmp ecx, 0x80000301
je 0x1001fdc2
cmp ecx, 0x80000401
je 0x1001fdc2
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x1001fdb2
cmp ecx, 0x80000601
je 0x1001fdb7
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x1001fdbd
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x1001fe0e
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x1001fe6a
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xb
cmp eax, ecx
jl 0x1001fea0
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x1001ff6c
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x1001fef8
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x1001ff54
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xb
cmp eax, ecx
jl 0x1001ff8a
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x1002033e
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.1001efc0
mov dword [ebp - 0x38], eax
push 0x80000301
push 0
push 0xd
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x1001ffe2
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
cmp ecx, 0x80000101
jne 0x10020022
and eax, 0xff
jmp 0x1002006d
cmp ecx, 0x80000201
jne 0x1002002d
cwde
jmp 0x1002006d
cmp ecx, 0x80000301
je 0x1002006d
cmp ecx, 0x80000401
je 0x1002006d
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x1002005d
cmp ecx, 0x80000601
je 0x10020062
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x10020068
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
push eax
push dword [ebp - 0x38]
call fcn.1001efc0
mov dword [ebp - 0x38], eax
push 8
call fcn.1002951f
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x100f81c2
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x3c]
push eax
push 0x20
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 0x38]
call fcn.10025019
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.10029519
add esp, 4
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0
cmp eax, ecx
jl 0x100200d5
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10020259
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x1002011a
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x1002014e
and eax, 0xff
jmp 0x10020199
cmp ecx, 0x80000201
jne 0x10020159
cwde
jmp 0x10020199
cmp ecx, 0x80000301
je 0x10020199
cmp ecx, 0x80000401
je 0x10020199
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10020189
cmp ecx, 0x80000601
je 0x1002018e
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x10020194
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100201e5
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x10020241
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0
cmp eax, ecx
jl 0x10020277
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x1002033e
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100202cf
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x1002032b
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
jmp 0x100223a0
mov ebx, dword [0x1036d9fc]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x10021c51
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 5
cmp eax, ecx
jl 0x1002038b
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x10020401
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 6
cmp eax, ecx
jl 0x100203ba
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x10020401
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 8
cmp eax, ecx
jl 0x100203e9
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x10020401
mov eax, 1
jmp 0x10020403
xor eax, eax
test eax, eax
je 0x10020692
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xc
cmp eax, ecx
jl 0x10020429
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x100205ad
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x1002046e
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x100204a2
and eax, 0xff
jmp 0x100204ed
cmp ecx, 0x80000201
jne 0x100204ad
cwde
jmp 0x100204ed
cmp ecx, 0x80000301
je 0x100204ed
cmp ecx, 0x80000401
je 0x100204ed
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x100204dd
cmp ecx, 0x80000601
je 0x100204e2
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x100204e8
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10020539
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x10020595
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xc
cmp eax, ecx
jl 0x100205cb
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x10020692
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10020623
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x1002067f
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 5
cmp eax, ecx
jl 0x100206b0
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x10020726
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 7
cmp eax, ecx
jl 0x100206df
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x10020726
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xb
cmp eax, ecx
jl 0x1002070e
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x10020726
mov eax, 1
jmp 0x10020728
xor eax, eax
test eax, eax
je 0x10020b99
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x12
cmp eax, ecx
jl 0x1002074e
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x10020792
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x15
cmp eax, ecx
jl 0x1002077d
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x10020792
xor eax, eax
jmp 0x10020797
mov eax, 1
test eax, eax
je 0x1002085a
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100207e6
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x10020842
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x12
cmp eax, ecx
jl 0x10020878
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x100209fc
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x100208bd
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x100208f1
and eax, 0xff
jmp 0x1002093c
cmp ecx, 0x80000201
jne 0x100208fc
cwde
jmp 0x1002093c
cmp ecx, 0x80000301
je 0x1002093c
cmp ecx, 0x80000401
je 0x1002093c
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x1002092c
cmp ecx, 0x80000601
je 0x10020931
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x10020937
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10020988
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x100209e4
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x15
cmp eax, ecx
jl 0x10020a1a
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10020b99
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x10020a5f
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10020a93
and eax, 0xff
jmp 0x10020ade
cmp ecx, 0x80000201
jne 0x10020a9e
cwde
jmp 0x10020ade
cmp ecx, 0x80000301
je 0x10020ade
cmp ecx, 0x80000401
je 0x10020ade
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10020ace
cmp ecx, 0x80000601
je 0x10020ad3
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x10020ad9
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10020b2a
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x10020b86
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 5
cmp eax, ecx
jl 0x10020bb7
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x10020c2d
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 9
cmp eax, ecx
jl 0x10020be6
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x10020c2d
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xb
cmp eax, ecx
jl 0x10020c15
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x10020c2d
mov eax, 1
jmp 0x10020c2f
xor eax, eax
test eax, eax
je 0x100210a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x12
cmp eax, ecx
jl 0x10020c55
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x10020c99
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x15
cmp eax, ecx
jl 0x10020c84
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x10020c99
xor eax, eax
jmp 0x10020c9e
mov eax, 1
test eax, eax
je 0x10020d61
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10020ced
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x10020d49
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x12
cmp eax, ecx
jl 0x10020d7f
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10020f03
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x10020dc4
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10020df8
and eax, 0xff
jmp 0x10020e43
cmp ecx, 0x80000201
jne 0x10020e03
cwde
jmp 0x10020e43
cmp ecx, 0x80000301
je 0x10020e43
cmp ecx, 0x80000401
je 0x10020e43
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10020e33
cmp ecx, 0x80000601
je 0x10020e38
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x10020e3e
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10020e8f
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x10020eeb
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x15
cmp eax, ecx
jl 0x10020f21
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x100210a0
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x10020f66
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10020f9a
and eax, 0xff
jmp 0x10020fe5
cmp ecx, 0x80000201
jne 0x10020fa5
cwde
jmp 0x10020fe5
cmp ecx, 0x80000301
je 0x10020fe5
cmp ecx, 0x80000401
je 0x10020fe5
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10020fd5
cmp ecx, 0x80000601
je 0x10020fda
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x10020fe0
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10021031
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x1002108d
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 5
cmp eax, ecx
jl 0x100210be
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x10021134
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xa
cmp eax, ecx
jl 0x100210ed
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x10021134
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xe
cmp eax, ecx
jl 0x1002111c
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x10021134
mov eax, 1
jmp 0x10021136
xor eax, eax
test eax, eax
je 0x10021676
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x10021172
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x100211a6
and eax, 0xff
jmp 0x100211f1
cmp ecx, 0x80000201
jne 0x100211b1
cwde
jmp 0x100211f1
cmp ecx, 0x80000301
je 0x100211f1
cmp ecx, 0x80000401
je 0x100211f1
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x100211e1
cmp ecx, 0x80000601
je 0x100211e6
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x100211ec
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x15
cmp eax, ecx
jl 0x10021214
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x10021258
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x18
cmp eax, ecx
jl 0x10021243
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x10021258
xor eax, eax
jmp 0x1002125d
mov eax, 1
test eax, eax
je 0x10021320
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100212ac
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x10021308
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x15
cmp eax, ecx
jl 0x1002133e
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x100214c2
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x10021383
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x100213b7
and eax, 0xff
jmp 0x10021402
cmp ecx, 0x80000201
jne 0x100213c2
cwde
jmp 0x10021402
cmp ecx, 0x80000301
je 0x10021402
cmp ecx, 0x80000401
je 0x10021402
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x100213f2
cmp ecx, 0x80000601
je 0x100213f7
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x100213fd
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x1002144e
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x100214aa
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x18
cmp eax, ecx
jl 0x100214e0
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10021664
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x10021525
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10021559
and eax, 0xff
jmp 0x100215a4
cmp ecx, 0x80000201
jne 0x10021564
cwde
jmp 0x100215a4
cmp ecx, 0x80000301
je 0x100215a4
cmp ecx, 0x80000401
je 0x100215a4
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10021594
cmp ecx, 0x80000601
je 0x10021599
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x1002159f
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x100215f0
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x1002164c
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 5
cmp eax, ecx
jl 0x10021694
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x1002170a
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 9
cmp eax, ecx
jl 0x100216c3
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x1002170a
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xe
cmp eax, ecx
jl 0x100216f2
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x1002170a
mov eax, 1
jmp 0x1002170c
xor eax, eax
test eax, eax
je 0x10021c4c
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x10021748
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x1002177c
and eax, 0xff
jmp 0x100217c7
cmp ecx, 0x80000201
jne 0x10021787
cwde
jmp 0x100217c7
cmp ecx, 0x80000301
je 0x100217c7
cmp ecx, 0x80000401
je 0x100217c7
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x100217b7
cmp ecx, 0x80000601
je 0x100217bc
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x100217c2
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x15
cmp eax, ecx
jl 0x100217ea
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x1002182e
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x18
cmp eax, ecx
jl 0x10021819
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x1002182e
xor eax, eax
jmp 0x10021833
mov eax, 1
test eax, eax
je 0x100218f6
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10021882
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x100218de
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x15
cmp eax, ecx
jl 0x10021914
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10021a98
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x10021959
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x1002198d
and eax, 0xff
jmp 0x100219d8
cmp ecx, 0x80000201
jne 0x10021998
cwde
jmp 0x100219d8
cmp ecx, 0x80000301
je 0x100219d8
cmp ecx, 0x80000401
je 0x100219d8
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x100219c8
cmp ecx, 0x80000601
je 0x100219cd
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x100219d3
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10021a24
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x10021a80
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0x18
cmp eax, ecx
jl 0x10021ab6
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10021c3a
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x10021afb
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10021b2f
and eax, 0xff
jmp 0x10021b7a
cmp ecx, 0x80000201
jne 0x10021b3a
cwde
jmp 0x10021b7a
cmp ecx, 0x80000301
je 0x10021b7a
cmp ecx, 0x80000401
je 0x10021b7a
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10021b6a
cmp ecx, 0x80000601
je 0x10021b6f
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x10021b75
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10021bc6
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x10021c22
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 5
cmp eax, ecx
jl 0x10021c6f
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x1002203b
push 0x80000301
push 0
push 7
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10021cab
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
cmp ecx, 0x80000101
jne 0x10021cdf
and eax, 0xff
jmp 0x10021d2a
cmp ecx, 0x80000201
jne 0x10021cea
cwde
jmp 0x10021d2a
cmp ecx, 0x80000301
je 0x10021d2a
cmp ecx, 0x80000401
je 0x10021d2a
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x10021d1a
cmp ecx, 0x80000601
je 0x10021d1f
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x4c]
jmp 0x10021d25
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.10001048
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x10021d48
cmp dword [ebp - 0x38], 0xa
jge 0x10021d48
mov eax, 1
jmp 0x10021d4a
xor eax, eax
test eax, eax
je 0x10022036
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.1001efc0
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
push ebx
push ecx
mov eax, dword [ebp - 0x38]
dec eax
jns 0x10021d8b
push 4
call fcn.10029525
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x10021d9e
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x10022036
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xa
cmp eax, ecx
jl 0x10021dcd
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10021f51
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xc
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10021e12
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x10021e46
and eax, 0xff
jmp 0x10021e91
cmp ecx, 0x80000201
jne 0x10021e51
cwde
jmp 0x10021e91
cmp ecx, 0x80000301
je 0x10021e91
cmp ecx, 0x80000401
je 0x10021e91
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10021e81
cmp ecx, 0x80000601
je 0x10021e86
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x10021e8c
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10021edd
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x10021f39
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xa
cmp eax, ecx
jl 0x10021f6f
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x10022036
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10021fc7
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x10022023
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
jmp 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 5
cmp eax, ecx
jl 0x10022059
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x100220a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xa
cmp eax, ecx
jl 0x10022088
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x100220a0
mov eax, 1
jmp 0x100220a2
xor eax, eax
test eax, eax
je 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xb
cmp eax, ecx
jl 0x100220c8
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x1002210c
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xb
cmp eax, ecx
jl 0x100220f7
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x1002210c
xor eax, eax
jmp 0x10022111
mov eax, 1
test eax, eax
je 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xc
cmp eax, ecx
jl 0x10022137
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x100222bb
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], 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 - 0x34]
test eax, eax
jne 0x1002217c
mov eax, 0x100f81c2
push eax
push 3
mov ebx, 0x1002af30
call fcn.1002952b
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x100221b0
and eax, 0xff
jmp 0x100221fb
cmp ecx, 0x80000201
jne 0x100221bb
cwde
jmp 0x100221fb
cmp ecx, 0x80000301
je 0x100221fb
cmp ecx, 0x80000401
je 0x100221fb
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x100221eb
cmp ecx, 0x80000601
je 0x100221f0
push 2
call fcn.10029525
add esp, 4
fld dword [ebp - 0x50]
jmp 0x100221f6
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10001048
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10022247
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x100222a3
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
mov ebx, dword [ebp - 0x34]
call fcn.10001b98
mov eax, 0xc
cmp eax, ecx
jl 0x100222d9
push 1
call fcn.10029525
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x100223a0
push 0x1036da28
push 4
mov eax, 2
call fcn.10029513
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x1036da28]
mov dword [ebp - 0x40], ebx
call fcn.10001b98
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x10022331
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.10029537
add esp, 8
mov dword [0x1036da28], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.1002951f
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 0x1002238d
push eax
mov ebx, eax
call fcn.100019f2
inc eax
push eax
call fcn.1002951f
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 0x100223a0
pop eax
pop ebx
pop ecx
jmp 0x1001f8f5
add esp, 0xc
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push dword [ebp - 0x24]
push 0xffffffff
call fcn.10025113
pop ebx
pop ecx
jmp 0x1001f43d
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x100223de
push ebx
call fcn.10029519
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x100223f5
push ebx
call fcn.10029519
add esp, 4
pop ebx
call fcn.10029519
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x1002240e
push ebx
call fcn.10029519
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x1002241e
push ebx
call fcn.10029519
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.10029519
add esp, 4
pop ebx
call fcn.10029519
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x10022458
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x10022454
imul eax, dword [ebx]
jmp 0x10022449
mov ecx, eax
test ecx, ecx
je 0x10022480
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.10029519
add esp, 4
pop ebx
call fcn.10029519
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x1002245e
call fcn.10029519
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x100224a6
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x100224a2
imul eax, dword [ebx]
jmp 0x10022497
mov ecx, eax
test ecx, ecx
je 0x100224fd
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x100224c4
push ebx
call fcn.10029519
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x100224d8
push ebx
call fcn.10029519
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x100224ec
push ebx
call fcn.10029519
add esp, 4
pop ebx
call fcn.10029519
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x100224ac
call fcn.10029519
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x10022515
push ebx
call fcn.10029519
add esp, 4
mov esp, ebp
pop ebp
ret