Function at 0x100416d3
Capabilities:
Resume thread
Suspend thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x7c
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
push 8
call fcn.100910d0
add esp, 4
mov dword [ebp - 0x20], eax
mov edi, eax
mov esi, 0x100f234f
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
call fcn.10003f94
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
je 0x1004182f
push dword [ebp + 8]
call fcn.1003c833
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
je 0x1004182f
cmp dword [ebp + 8], 4
jl 0x1004182f
cmp dword [ebp + 0xc], 4
jl 0x1004182f
mov eax, 0x100f234f
xor ecx, ecx
test eax, eax
je 0x1004178d
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx]
xor ebx, ebx
test eax, eax
je 0x100417a0
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x100417b7
dec eax
test ecx, ecx
je 0x100417b7
call fcn.10007569
add esp, 0xc
test eax, eax
je 0x1004182f
push htons
push 0
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx]
test eax, eax
jne 0x100417d7
mov eax, 0x100f234f
push eax
push 1
mov ebx, 0x194
call fcn.100926d0
add esp, 0x10
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 0xc00
jg 0x1004182f
push dword [ebp + 0xc]
call fcn.100415fc
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x6c], 0
push 0
lea eax, [ebp - 0x6c]
push eax
push dword [ebp + 8]
call fcn.1003faf1
cmp dword [ebp - 0x68], eax
jne 0x10041825
cmp dword [ebp - 0x64], edx
jne 0x1004182f
xor eax, eax
jmp 0x10041834
mov eax, 1
test eax, eax
je 0x1004184b
mov edx, 0xffffffff
mov eax, 0xffffffff
jmp 0x10041c62
cmp dword [ebp + 0x18], 0
jne 0x10041861
mov dword [ebp + 0x14], 0x1f40
jmp 0x10041872
cmp dword [ebp + 0x14], 0
jg 0x10041872
mov dword [ebp + 0x14], 0xffffffff
push 0x80000301
push 0
push 0x2000
push 0x80000301
push 0
push 0x1000
push 2
mov ebx, 0xc8
call fcn.10093580
add esp, 0x1c
mov dword [ebp - 0x34], eax
push 0x40
push dword [ebp - 0x34]
push 0
push 0x1000
push 0
push 0
mov eax, dword [ebp + 8]
cdq
push edx
push eax
call fcn.10006bb4
mov dword [ebp - 8], eax
mov dword [ebp - 4], edx
xor eax, eax
cmp dword [ebp - 4], 0
jg 0x100418e0
jl 0x100418df
cmp dword [ebp - 8], 0xffff
jae 0x100418e0
inc eax
test eax, eax
je 0x100418f7
mov edx, 0xffffffff
mov eax, 0xffffffff
jmp 0x10041c62
push 0
push pe_nt_image_headers32
push dword [ebp - 4]
push dword [ebp - 8]
call fcn.10041c98
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
push 0
push 0x300
push dword [ebp - 0x34]
push dword [ebp - 0x38]
call fcn.10041c98
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], edx
push dword [ebp - 0xc]
push dword [ebp - 0x10]
call fcn.10041cbd
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x1004194f
push ebx
call fcn.100910d6
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 4]
push dword [ebp - 8]
mov eax, dword [ebp + 8]
cdq
push edx
push eax
call fcn.1002e0da
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
je 0x1004199a
push dword [ebp + 0x10]
push dword [ebp - 0xc]
push dword [ebp - 0x10]
mov eax, dword [ebp + 8]
cdq
push edx
push eax
call fcn.1002e0da
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
je 0x1004199a
xor eax, eax
jmp 0x1004199f
mov eax, 1
test eax, eax
je 0x100419d6
push 0x8000
push 0
push 0
push dword [ebp - 4]
push dword [ebp - 8]
mov eax, dword [ebp + 8]
cdq
push edx
push eax
call fcn.100026eb
mov edx, 0xffffffff
mov eax, 0xffffffff
jmp 0x10041c62
mov dword [ebp - 0x34], esp
push dword [ebp + 0xc]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_SuspendThread]
nop
nop
cmp dword [ebp - 0x34], esp
je 0x10041a02
push 0x4a0
push 0x4100f87
push 6
call fcn.100910e2
add esp, 0xc
push 1
push 1
lea eax, [ebp - 0x20]
push eax
push 0
push dword [ebp - 4]
push dword [ebp - 8]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.10042b2e
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], edx
cmp dword [ebp - 0x1c], 0
jne 0x10041a36
cmp dword [ebp - 0x18], 0
je 0x10041a6b
push 0x8000
push 0
push 0
push dword [ebp - 4]
push dword [ebp - 8]
mov eax, dword [ebp + 8]
cdq
push edx
push eax
call fcn.100026eb
mov edx, 0xffffffff
mov eax, 0xffffffff
jmp 0x10041c62
mov dword [ebp - 0x34], esp
push dword [ebp + 0xc]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_ResumeThread]
nop
nop
cmp dword [ebp - 0x34], esp
je 0x10041a97
push 0x5cd
push 0x4100f87
push 6
call fcn.100910e2
add esp, 0xc
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jg 0x10041a6b
push 0
push 0xe6
push dword [ebp - 4]
push dword [ebp - 8]
call fcn.10041c98
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
lea eax, [ebp - 0x28]
push eax
push 8
push dword [ebp - 0x34]
push dword [ebp - 0x38]
mov eax, dword [ebp + 8]
cdq
push edx
push eax
call fcn.10003a59
mov dword [ebp - 0x34], esp
push 1
push dword [ebp + 0xc]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
nop
nop
cmp dword [ebp - 0x34], esp
je 0x10041b06
push 0x698
push 0x4100f87
push 6
call fcn.100910e2
add esp, 0xc
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0x102
je 0x10041b20
jmp 0x10041b89
cmp dword [ebp + 0x14], 0
jle 0x10041b48
inc dword [ebp - 0x30]
mov eax, dword [ebp + 0x14]
cmp dword [ebp - 0x30], eax
jle 0x10041b48
mov edx, 0xffffffff
mov eax, 0xfffffffe
jmp 0x10041c62
mov eax, 0x10115a11
xor ecx, ecx
test eax, eax
je 0x10041b56
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 0x28]
xor ebx, ebx
test eax, eax
je 0x10041b67
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x10041b7e
dec eax
test ecx, ecx
je 0x10041b7e
call fcn.10007569
add esp, 0xc
test eax, eax
je 0x10041aa0
push 0x8000
push 0
push 0
push dword [ebp - 4]
push dword [ebp - 8]
mov eax, dword [ebp + 8]
cdq
push edx
push eax
call fcn.100026eb
push 0
push 0
push 0
push 0x80000301
push 0
push 4
push htons
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x10041bce
mov eax, 0x100f234f
push eax
push 3
mov ebx, 0x19c
call fcn.10093d20
add esp, 0x28
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
cmp ecx, 0x80000101
jne 0x10041c04
and eax, 0xff
xor edx, edx
jmp 0x10041c5d
cmp ecx, 0x80000201
jne 0x10041c10
cwde
cdq
jmp 0x10041c5d
cmp ecx, 0x80000301
jne 0x10041c1b
cdq
jmp 0x10041c5d
cmp ecx, 0x80000401
je 0x10041c5d
mov dword [ebp - 0x44], eax
cmp ecx, 0x80000501
je 0x10041c4d
cmp ecx, 0x80000601
je 0x10041c52
push 0x8e4
push 0x4100f87
push 2
call fcn.100910e2
add esp, 0xc
fld dword [ebp - 0x44]
jmp 0x10041c58
mov dword [ebp - 0x40], edx
fld qword [ebp - 0x44]
call fcn.1000175f
jmp 0x10041c62
push edx
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x10041c74
push ebx
call fcn.100910d6
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
call fcn.100910d6
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x10041c90
push ebx
call fcn.100910d6
add esp, 4
pop eax
pop edx
mov esp, ebp
pop ebp
ret 0x14