Function at 0x100030af
Capabilities:
Allocate or change rwx memory
Check for software breakpoints
Copy file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
push 0x14
call fcn.1005090d
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.1005090d
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.1005090d
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x100ff29d
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.1005090d
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x100ff252
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.1005090d
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x100ff252
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 [0x10100afd]
call fcn.10001d8c
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x100064c3
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x100064c0
cmp dword [ebp - 4], 1
jne 0x100031ec
mov eax, 0x100ff27c
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x100031e3
push ebx
call fcn.10050907
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x10003243
cmp dword [ebp - 4], 2
jne 0x10003215
mov eax, 0x100ff286
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x1000320c
push ebx
call fcn.10050907
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x10003243
cmp dword [ebp - 4], 3
jne 0x1000323e
mov eax, 0x100ff291
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x10003235
push ebx
call fcn.10050907
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x10003243
jmp 0x100064c3
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.100066ab
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.100079a6
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x10003291
push ebx
call fcn.10050907
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x100032a1
push ebx
call fcn.10050907
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x100032b5
push ebx
call fcn.10050907
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.10007bab
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push 0x100ff29b
push dword [ebp - 0x3c]
mov ecx, 3
call fcn.10003053
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x100032ec
push ebx
call fcn.10050907
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
nop
nop
cmp dword [ebp - 0x44], esp
je 0x10003320
push 0x267
push 0x4035e0a
push 6
call fcn.1005092b
add esp, 0xc
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x10003330
push ebx
call fcn.10050907
add esp, 4
push VariantClear
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x10003343
mov eax, 0x100ff251
push eax
push 1
mov ebx, 0x268
call fcn.10051ae0
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x1000336d
push ebx
call fcn.10050907
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10007c5c
mov dword [ebp - 0x1c], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x10003390
mov eax, 0x100ff251
push eax
push 1
mov ebx, 0x244
call fcn.10051b50
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.10007c80
test eax, eax
je 0x100033d9
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x100033d9
mov eax, 1
jmp 0x100033de
mov eax, 0
test eax, eax
je 0x100064b9
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.10008021
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
xor eax, eax
call dword [sym.imp.KERNEL32.dll_VirtualAllocEx]
nop
nop
cmp dword [ebp - 0x54], esp
je 0x10003478
push 0x433
push 0x4035e0a
push 6
call fcn.1005092b
add esp, 0xc
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.10008044
push 8
call fcn.1005090d
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x100ff252
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.100081c5
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.10050907
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 0x10003645
mov ebx, dword [ebp - 0x28]
call fcn.10001371
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x1000351d
push 0x51a
push 0x4035e0a
push 4
call fcn.1005092b
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x1000353a
push 0x51a
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
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.10002c21
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
call fcn.10001371
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x1000358a
push 0x54c
push 0x4035e0a
push 4
call fcn.1005092b
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x100035a7
push 0x54c
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
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.10002c21
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
call fcn.10001371
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x100035f7
push 0x54c
push 0x4035e0a
push 4
call fcn.1005092b
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x10003614
push 0x54c
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
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.10008044
pop eax
pop ebx
pop ecx
jmp 0x100034e8
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.100087aa
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x10003673
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x1000366f
imul eax, dword [ebx]
jmp 0x10003664
mov ecx, eax
test ecx, ecx
je 0x1000369b
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.10050907
add esp, 4
pop ebx
call fcn.10050907
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x10003679
call fcn.10050907
add esp, 4
mov eax, 0x100ff252
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.100096cb
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 0x1000649d
cmp dword [ebp - 4], 1
jne 0x10003812
mov ebx, dword [ebp - 0x30]
call fcn.10001371
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x100036ff
push 0x6bd
push 0x4035e0a
push 4
call fcn.1005092b
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x1000371c
push 0x6bd
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
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 VariantClear
push 0
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebx]
test eax, eax
jne 0x1000374a
mov eax, 0x100ff251
push eax
push 2
mov ebx, 0x144
call fcn.10051b60
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x10003800
mov ebx, dword [ebp - 0x30]
call fcn.10001371
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x10003791
push 0x70c
push 0x4035e0a
push 4
call fcn.1005092b
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x100037ae
push 0x70c
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
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 VariantClear
push 0
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
test eax, eax
jne 0x100037dc
mov eax, 0x100ff251
push eax
push 2
mov ebx, 0x144
call fcn.10051b60
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x10003800
xor eax, eax
jmp 0x10003805
mov eax, 1
test eax, eax
je 0x10003812
jmp 0x10006495
mov ebx, dword [ebp - 0x30]
call fcn.10001371
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x10003839
push 0x7b8
push 0x4035e0a
push 4
call fcn.1005092b
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x10003856
push 0x7b8
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x3c], ebx
push 8
call fcn.1005090d
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x100ff252
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.1000a2e1
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.10050907
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x100038f0
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0
cmp eax, ecx
jl 0x100038d8
push 0x7f2
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x100038f0
mov eax, 1
jmp 0x100038f5
mov eax, 0
test eax, eax
je 0x10006495
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
call fcn.10001371
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x1000392d
push 0x81d
push 0x4035e0a
push 4
call fcn.1005092b
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x1000394a
push 0x81d
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
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 0x10003975
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10003988
push ebx
call fcn.10050907
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x100039d4
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x10003a08
and eax, 0xff
jmp 0x10003a5d
cmp ecx, 0x80000201
jne 0x10003a13
cwde
jmp 0x10003a5d
cmp ecx, 0x80000301
je 0x10003a5d
cmp ecx, 0x80000401
je 0x10003a5d
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10003a4d
cmp ecx, 0x80000601
je 0x10003a52
push 0x8a5
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10003a58
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0x10100b01]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x10003a99
mov ebx, dword [0x10100b01]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x10003a99
mov eax, 1
jmp 0x10003a9e
mov eax, 0
test eax, eax
je 0x100041df
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 9
cmp eax, ecx
jl 0x10003ace
push 0xcc3
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x10003b1f
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xa
cmp eax, ecx
jl 0x10003b07
push 0xcec
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x10003b1f
mov eax, 1
jmp 0x10003b24
mov eax, 0
test eax, eax
je 0x100041da
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xb
cmp eax, ecx
jl 0x10003b54
push 0xd38
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10003ce2
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10003b99
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x10003bcd
and eax, 0xff
jmp 0x10003c22
cmp ecx, 0x80000201
jne 0x10003bd8
cwde
jmp 0x10003c22
cmp ecx, 0x80000301
je 0x10003c22
cmp ecx, 0x80000401
je 0x10003c22
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10003c12
cmp ecx, 0x80000601
je 0x10003c17
push 0xd84
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10003c1d
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10003c6e
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10003cca
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xb
cmp eax, ecx
jl 0x10003d0a
push 0xdf4
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x10003dd6
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10003d62
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10003dbe
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xb
cmp eax, ecx
jl 0x10003dfe
push 0xe69
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x100041da
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.10002c21
mov dword [ebp - 0x38], eax
push 0x80000301
push 0
push 0xd
push 0x80000301
push 0
push 3
push htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10003e56
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x10003e96
and eax, 0xff
jmp 0x10003eeb
cmp ecx, 0x80000201
jne 0x10003ea1
cwde
jmp 0x10003eeb
cmp ecx, 0x80000301
je 0x10003eeb
cmp ecx, 0x80000401
je 0x10003eeb
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10003edb
cmp ecx, 0x80000601
je 0x10003ee0
push 0xf03
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10003ee6
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
push eax
push dword [ebp - 0x38]
call fcn.10002c21
mov dword [ebp - 0x38], eax
push 8
call fcn.1005090d
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x100ff252
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.1000a2e1
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.10050907
add esp, 4
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0
cmp eax, ecx
jl 0x10003f5d
push 0xfa7
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x100040eb
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10003fa2
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x10003fd6
and eax, 0xff
jmp 0x1000402b
cmp ecx, 0x80000201
jne 0x10003fe1
cwde
jmp 0x1000402b
cmp ecx, 0x80000301
je 0x1000402b
cmp ecx, 0x80000401
je 0x1000402b
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x1000401b
cmp ecx, 0x80000601
je 0x10004020
push 0xff3
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10004026
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10004077
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x100040d3
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0
cmp eax, ecx
jl 0x10004113
push 0x1063
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x100041da
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x1000416b
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x100041c7
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
jmp 0x10006495
mov ebx, dword [0x10100b01]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x10005cb4
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.10001371
mov eax, 5
cmp eax, ecx
jl 0x10004231
push 0x11a7
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x100042bb
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 6
cmp eax, ecx
jl 0x1000426a
push 0x11d0
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x100042bb
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 8
cmp eax, ecx
jl 0x100042a3
push 0x11f9
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x100042bb
mov eax, 1
jmp 0x100042c0
mov eax, 0
test eax, eax
je 0x1000456d
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xc
cmp eax, ecx
jl 0x100042f0
push 0x134b
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x1000447e
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10004335
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x10004369
and eax, 0xff
jmp 0x100043be
cmp ecx, 0x80000201
jne 0x10004374
cwde
jmp 0x100043be
cmp ecx, 0x80000301
je 0x100043be
cmp ecx, 0x80000401
je 0x100043be
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x100043ae
cmp ecx, 0x80000601
je 0x100043b3
push 0x1397
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x100043b9
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x1000440a
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10004466
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xc
cmp eax, ecx
jl 0x100044a6
push 0x1407
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x1000456d
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x100044fe
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x1000455a
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 5
cmp eax, ecx
jl 0x10004595
push 0x14c8
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x1000461f
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 7
cmp eax, ecx
jl 0x100045ce
push 0x14f1
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x1000461f
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xb
cmp eax, ecx
jl 0x10004607
push 0x151a
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x1000461f
mov eax, 1
jmp 0x10004624
mov eax, 0
test eax, eax
je 0x10004ad1
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x12
cmp eax, ecx
jl 0x10004654
push 0x194d
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x100046a2
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x15
cmp eax, ecx
jl 0x1000468d
push 0x1976
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x100046a2
xor eax, eax
jmp 0x100046a7
mov eax, 1
test eax, eax
je 0x1000476a
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x100046f6
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10004752
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x12
cmp eax, ecx
jl 0x10004792
push 0x19e8
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10004920
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x100047d7
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x1000480b
and eax, 0xff
jmp 0x10004860
cmp ecx, 0x80000201
jne 0x10004816
cwde
jmp 0x10004860
cmp ecx, 0x80000301
je 0x10004860
cmp ecx, 0x80000401
je 0x10004860
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10004850
cmp ecx, 0x80000601
je 0x10004855
push 0x1a34
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x1000485b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x100048ac
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10004908
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x15
cmp eax, ecx
jl 0x10004948
push 0x1aa4
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10004ad1
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x1000498d
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x100049c1
and eax, 0xff
jmp 0x10004a16
cmp ecx, 0x80000201
jne 0x100049cc
cwde
jmp 0x10004a16
cmp ecx, 0x80000301
je 0x10004a16
cmp ecx, 0x80000401
je 0x10004a16
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10004a06
cmp ecx, 0x80000601
je 0x10004a0b
push 0x1af0
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10004a11
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10004a62
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10004abe
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 5
cmp eax, ecx
jl 0x10004af9
push 0x1bc1
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x10004b83
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 9
cmp eax, ecx
jl 0x10004b32
push 0x1bea
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x10004b83
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xb
cmp eax, ecx
jl 0x10004b6b
push 0x1c13
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x10004b83
mov eax, 1
jmp 0x10004b88
mov eax, 0
test eax, eax
je 0x10005035
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x12
cmp eax, ecx
jl 0x10004bb8
push 0x204c
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x10004c06
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x15
cmp eax, ecx
jl 0x10004bf1
push 0x2075
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x10004c06
xor eax, eax
jmp 0x10004c0b
mov eax, 1
test eax, eax
je 0x10004cce
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10004c5a
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10004cb6
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x12
cmp eax, ecx
jl 0x10004cf6
push 0x20e7
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10004e84
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10004d3b
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x10004d6f
and eax, 0xff
jmp 0x10004dc4
cmp ecx, 0x80000201
jne 0x10004d7a
cwde
jmp 0x10004dc4
cmp ecx, 0x80000301
je 0x10004dc4
cmp ecx, 0x80000401
je 0x10004dc4
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10004db4
cmp ecx, 0x80000601
je 0x10004db9
push 0x2133
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10004dbf
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10004e10
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10004e6c
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x15
cmp eax, ecx
jl 0x10004eac
push 0x21a3
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10005035
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10004ef1
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x10004f25
and eax, 0xff
jmp 0x10004f7a
cmp ecx, 0x80000201
jne 0x10004f30
cwde
jmp 0x10004f7a
cmp ecx, 0x80000301
je 0x10004f7a
cmp ecx, 0x80000401
je 0x10004f7a
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10004f6a
cmp ecx, 0x80000601
je 0x10004f6f
push 0x21ef
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10004f75
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10004fc6
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10005022
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 5
cmp eax, ecx
jl 0x1000505d
push 0x22d1
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x100050e7
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xa
cmp eax, ecx
jl 0x10005096
push 0x22fa
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x100050e7
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xe
cmp eax, ecx
jl 0x100050cf
push 0x2323
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x100050e7
mov eax, 1
jmp 0x100050ec
mov eax, 0
test eax, eax
je 0x10005672
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10005128
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x1000515c
and eax, 0xff
jmp 0x100051b1
cmp ecx, 0x80000201
jne 0x10005167
cwde
jmp 0x100051b1
cmp ecx, 0x80000301
je 0x100051b1
cmp ecx, 0x80000401
je 0x100051b1
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x100051a1
cmp ecx, 0x80000601
je 0x100051a6
push 0x27b3
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x100051ac
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x15
cmp eax, ecx
jl 0x100051de
push 0x2805
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x1000522c
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x18
cmp eax, ecx
jl 0x10005217
push 0x282e
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x1000522c
xor eax, eax
jmp 0x10005231
mov eax, 1
test eax, eax
je 0x100052f4
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10005280
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x100052dc
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x15
cmp eax, ecx
jl 0x1000531c
push 0x28a0
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x100054aa
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10005361
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x10005395
and eax, 0xff
jmp 0x100053ea
cmp ecx, 0x80000201
jne 0x100053a0
cwde
jmp 0x100053ea
cmp ecx, 0x80000301
je 0x100053ea
cmp ecx, 0x80000401
je 0x100053ea
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x100053da
cmp ecx, 0x80000601
je 0x100053df
push 0x28ec
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x100053e5
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10005436
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10005492
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x18
cmp eax, ecx
jl 0x100054d2
push 0x295c
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10005660
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10005517
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x1000554b
and eax, 0xff
jmp 0x100055a0
cmp ecx, 0x80000201
jne 0x10005556
cwde
jmp 0x100055a0
cmp ecx, 0x80000301
je 0x100055a0
cmp ecx, 0x80000401
je 0x100055a0
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10005590
cmp ecx, 0x80000601
je 0x10005595
push 0x29a8
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x1000559b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x100055ec
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10005648
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
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.10001371
mov eax, 5
cmp eax, ecx
jl 0x1000569a
push 0x2a99
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x10005724
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 9
cmp eax, ecx
jl 0x100056d3
push 0x2ac2
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x10005724
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xe
cmp eax, ecx
jl 0x1000570c
push 0x2aeb
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x10005724
mov eax, 1
jmp 0x10005729
mov eax, 0
test eax, eax
je 0x10005caf
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10005765
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x10005799
and eax, 0xff
jmp 0x100057ee
cmp ecx, 0x80000201
jne 0x100057a4
cwde
jmp 0x100057ee
cmp ecx, 0x80000301
je 0x100057ee
cmp ecx, 0x80000401
je 0x100057ee
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x100057de
cmp ecx, 0x80000601
je 0x100057e3
push 0x2f72
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x100057e9
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x15
cmp eax, ecx
jl 0x1000581b
push 0x2fc4
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x10005869
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x18
cmp eax, ecx
jl 0x10005854
push 0x2fed
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x10005869
xor eax, eax
jmp 0x1000586e
mov eax, 1
test eax, eax
je 0x10005931
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x100058bd
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10005919
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x15
cmp eax, ecx
jl 0x10005959
push 0x305f
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10005ae7
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x1000599e
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x100059d2
and eax, 0xff
jmp 0x10005a27
cmp ecx, 0x80000201
jne 0x100059dd
cwde
jmp 0x10005a27
cmp ecx, 0x80000301
je 0x10005a27
cmp ecx, 0x80000401
je 0x10005a27
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10005a17
cmp ecx, 0x80000601
je 0x10005a1c
push 0x30ab
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10005a22
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10005a73
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10005acf
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0x18
cmp eax, ecx
jl 0x10005b0f
push 0x311b
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10005c9d
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10005b54
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x10005b88
and eax, 0xff
jmp 0x10005bdd
cmp ecx, 0x80000201
jne 0x10005b93
cwde
jmp 0x10005bdd
cmp ecx, 0x80000301
je 0x10005bdd
cmp ecx, 0x80000401
je 0x10005bdd
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10005bcd
cmp ecx, 0x80000601
je 0x10005bd2
push 0x3167
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10005bd8
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10005c29
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10005c85
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 5
cmp eax, ecx
jl 0x10005cdc
push 0x324a
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x100060e7
push 0x80000301
push 0
push 7
push 0x80000301
push 0
push 3
push htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10005d18
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x10005d4c
and eax, 0xff
jmp 0x10005da1
cmp ecx, 0x80000201
jne 0x10005d57
cwde
jmp 0x10005da1
cmp ecx, 0x80000301
je 0x10005da1
cmp ecx, 0x80000401
je 0x10005da1
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x10005d91
cmp ecx, 0x80000601
je 0x10005d96
push 0x36ab
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x4c]
jmp 0x10005d9c
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.10002940
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x10005dbf
cmp dword [ebp - 0x38], 0xa
jge 0x10005dbf
mov eax, 1
jmp 0x10005dc4
mov eax, 0
test eax, eax
je 0x100060e2
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.10002c21
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
call fcn.10001371
push ebx
push ecx
mov eax, dword [ebp - 0x38]
dec eax
jns 0x10005e0f
push 0x37b2
push 0x4035e0a
push 4
call fcn.1005092b
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x10005e2c
push 0x37b2
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x100060e2
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xa
cmp eax, ecx
jl 0x10005e65
push 0x37fe
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x10005ff3
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x10005eaa
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x10005ede
and eax, 0xff
jmp 0x10005f33
cmp ecx, 0x80000201
jne 0x10005ee9
cwde
jmp 0x10005f33
cmp ecx, 0x80000301
je 0x10005f33
cmp ecx, 0x80000401
je 0x10005f33
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x10005f23
cmp ecx, 0x80000601
je 0x10005f28
push 0x384a
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x10005f2e
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10005f7f
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10005fdb
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xa
cmp eax, ecx
jl 0x1000601b
push 0x38ba
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x100060e2
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10006073
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x100060cf
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
jmp 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 5
cmp eax, ecx
jl 0x1000610f
push 0x39a8
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x10006160
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xa
cmp eax, ecx
jl 0x10006148
push 0x39d1
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x10006160
mov eax, 1
jmp 0x10006165
mov eax, 0
test eax, eax
je 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xb
cmp eax, ecx
jl 0x10006195
push 0x3dcd
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x100061e3
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xb
cmp eax, ecx
jl 0x100061ce
push 0x3df6
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x100061e3
xor eax, eax
jmp 0x100061e8
mov eax, 1
test eax, eax
je 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xc
cmp eax, ecx
jl 0x10006218
push 0x3e42
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x100063a6
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 htons
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x1000625d
mov eax, 0x100ff252
push eax
push 3
mov ebx, 0x19c
call fcn.10051ca0
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 0x10006291
and eax, 0xff
jmp 0x100062e6
cmp ecx, 0x80000201
jne 0x1000629c
cwde
jmp 0x100062e6
cmp ecx, 0x80000301
je 0x100062e6
cmp ecx, 0x80000401
je 0x100062e6
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x100062d6
cmp ecx, 0x80000601
je 0x100062db
push 0x3e8e
push 0x4035e0a
push 2
call fcn.1005092b
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x100062e1
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.10002940
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10006332
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x1000638e
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
mov ebx, dword [ebp - 0x34]
call fcn.10001371
mov eax, 0xc
cmp eax, ecx
jl 0x100063ce
push 0x3efe
push 0x4035e0a
push 1
call fcn.1005092b
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x10006495
push 0x10100afd
push 4
mov eax, 2
call fcn.100510d0
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x10100afd]
mov dword [ebp - 0x40], ebx
call fcn.10001371
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 0x10006426
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.10050919
add esp, 8
mov dword [0x10100afd], 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.1005090d
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 0x10006482
push eax
mov ebx, eax
call fcn.10002fe8
inc eax
push eax
call fcn.1005090d
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 0x10006495
pop eax
pop ebx
pop ecx
jmp 0x100036c0
add esp, 0xc
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push dword [ebp - 0x24]
push 0xffffffff
call fcn.1000a3db
pop ebx
pop ecx
jmp 0x100031b5
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x100064d3
push ebx
call fcn.10050907
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x100064ea
push ebx
call fcn.10050907
add esp, 4
pop ebx
call fcn.10050907
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x10006503
push ebx
call fcn.10050907
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x10006513
push ebx
call fcn.10050907
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.10050907
add esp, 4
pop ebx
call fcn.10050907
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x1000654d
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x10006549
imul eax, dword [ebx]
jmp 0x1000653e
mov ecx, eax
test ecx, ecx
je 0x10006575
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.10050907
add esp, 4
pop ebx
call fcn.10050907
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x10006553
call fcn.10050907
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x1000659b
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x10006597
imul eax, dword [ebx]
jmp 0x1000658c
mov ecx, eax
test ecx, ecx
je 0x100065f2
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x100065b9
push ebx
call fcn.10050907
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x100065cd
push ebx
call fcn.10050907
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x100065e1
push ebx
call fcn.10050907
add esp, 4
pop ebx
call fcn.10050907
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x100065a1
call fcn.10050907
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x1000660a
push ebx
call fcn.10050907
add esp, 4
mov esp, ebp
pop ebp
ret