Function at 0x1403c1b10
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov dword [rsp + 0x20], r9d
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r15
sub rsp, 0x40
mov r13, qword [rcx + 8]
mov r15d, edx
mov rdi, qword [rcx]
xor edx, edx
mov rbx, qword [rcx + 0x10]
mov ebp, r8d
mov rsi, rcx
mov dword [rsp + 0x80], edx
movzx eax, byte [r13 + 0x20]
dec dword [rdi + 0x44]
mov r12d, dword [rdi + 0x44]
mov byte [rsp + 0x88], al
mov dword [rsp + 0x34], edx
cmp r15d, 2
jne 0x1403c1b75
cmp byte [r13 + 0x21], 0x5a
jne 0x1403c1b75
xor eax, eax
add rsp, 0x40
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov r9d, Ordinal_60
test ebp, ebp
jle 0x1403c1c40
cmp byte [r13 + 0x20], 0x59
movsxd rcx, dword [rbx + 0x90]
jne 0x1403c1beb
mov dword [rsp + 0x34], ecx
cmp r15d, 2
jne 0x1403c1bc9
cmp byte [r13 + 0x21], 0x56
jne 0x1403c1ba8
mov r8d, dword [rsi + 0x34]
jmp 0x1403c1bac
mov r8d, dword [rsi + 0x2c]
mov edx, Ordinal_58
mov eax, reloc.SinoSPE.dll_Ordinal_44
cmovne edx, r9d
mov r9d, reloc.WS2_32.dll_gethostbyname
cmovne eax, r9d
mov ecx, dword [rax + rsi]
jmp 0x1403c1bd5
mov r8d, dword [rsi + 0x3c]
mov edx, Ordinal_58
mov ecx, dword [rsi + 0x34]
mov dword [rsp + 0x28], r12d
mov r9d, ebp
mov dword [rsp + 0x20], ecx
mov rcx, rsi
call fcn.1403c20a0
jmp 0x1403c1c40
cmp dword [rbx + 0x94], ecx
jg 0x1403c1c0d
mov r9d, r12d
mov dword [rsp + 0x20], 1
mov edx, Ordinal_60
mov rcx, rbx
call fcn.140301d30
jmp 0x1403c1c40
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
mov rax, rcx
shl rax, 5
add rax, qword [rbx + 0x88]
mov dword [rax], Ordinal_60
mov dword [rax + 4], ebp
mov dword [rax + 8], r12d
mov dword [rax + 0xc], 1
mov qword [rax + 0x10], rdx
mov qword [rax + 0x18], rdx
cmp r15d, 1
jne 0x1403c1c5a
cmp dword [r13 + 0x84], 0
jne 0x1403c1c5a
xor edx, edx
mov rcx, rsi
call fcn.1403c0910
mov eax, dword [rbx + 0x90]
mov dword [rsp + 0x38], eax
movzx eax, byte [r13 + 0x22]
mov qword [rsp + 0x90], r14
cmp byte [r13 + 0x21], al
jne 0x1403c1d64
test ebp, ebp
je 0x1403c1d64
cmp byte [r13 + 0x20], 0x59
jne 0x1403c1d64
movzx eax, byte [rdi + 0x1f]
test al, al
jne 0x1403c1ca5
inc dword [rdi + 0x38]
mov ebp, dword [rdi + 0x38]
inc dword [rdi + 0x38]
mov r14d, dword [rdi + 0x38]
jmp 0x1403c1cd1
dec al
movzx eax, al
mov byte [rdi + 0x1f], al
mov ebp, dword [rdi + rax*4 + 0xe8]
test al, al
jne 0x1403c1cc1
inc dword [rdi + 0x38]
mov r14d, dword [rdi + 0x38]
jmp 0x1403c1cd1
dec al
movzx eax, al
mov byte [rdi + 0x1f], al
mov r14d, dword [rdi + rax*4 + 0xe8]
cmp r15d, 2
jne 0x1403c1d04
mov r8d, dword [rsi + 0x2c]
mov r9d, ebp
mov edx, 0x87
mov rcx, rbx
call fcn.1403858c0
mov r8d, dword [rsi + 0x3c]
mov r9d, r14d
mov edx, 0x87
mov rcx, rbx
call fcn.1403858c0
mov r8d, r14d
jmp 0x1403c1d22
cmp dword [rsi + 0x28], 0
je 0x1403c1d36
mov r8d, dword [rsi + 0x3c]
mov r9d, ebp
mov edx, 0x87
mov rcx, rbx
call fcn.1403858c0
mov r8d, dword [rsi + 0x28]
mov r9d, r12d
mov dword [rsp + 0x20], ebp
mov edx, Ordinal_60
mov rcx, rbx
call fcn.140385930
test ebp, ebp
je 0x1403c1d4c
movzx eax, byte [rdi + 0x1f]
cmp al, 8
jae 0x1403c1d4c
mov dword [rdi + rax*4 + 0xe8], ebp
inc byte [rdi + 0x1f]
test r14d, r14d
je 0x1403c1d64
movzx eax, byte [rdi + 0x1f]
cmp al, 8
jae 0x1403c1d64
mov dword [rdi + rax*4 + 0xe8], r14d
inc byte [rdi + 0x1f]
mov ecx, r15d
sub ecx, 1
je 0x1403c1e03
cmp ecx, 1
je 0x1403c1dc0
cmp dword [r13 + 0x84], 0
mov ebp, dword [rsi + 0x40]
mov r14d, dword [rsi + 0x3c]
mov dword [rsp + 0x30], ebp
je 0x1403c1da6
mov r8d, dword [r13 + 0x88]
mov r9d, 1
mov edx, 0x56
mov rcx, rbx
call fcn.1403858c0
jmp 0x1403c1e16
mov eax, dword [rsi + 0x20]
xor r9d, r9d
mov r8d, r14d
mov dword [rsp + 0x20], eax
mov rdx, r13
mov rcx, rsi
call fcn.1403c0d00
jmp 0x1403c1e16
mov r8d, dword [r13 + 0x84]
mov r9d, 1
mov ebp, dword [rsi + 0x30]
mov r14d, dword [rsi + 0x2c]
mov dword [rsp + 0x30], ebp
test r8d, r8d
je 0x1403c1dec
mov edx, 0x56
mov rcx, rbx
call fcn.1403858c0
jmp 0x1403c1e16
mov eax, dword [rsi + 0x20]
mov r8d, r14d
mov rdx, r13
mov dword [rsp + 0x20], eax
mov rcx, rsi
call fcn.1403c0d00
jmp 0x1403c1e16
mov eax, dword [rsi + 0x38]
mov rcx, rsi
mov r14d, dword [rsi + 0x34]
mov dword [rsp + 0x30], eax
call fcn.1403c3750
cmp r15d, dword [rsi + 0x24]
jne 0x1403c1e4c
mov r8d, r14d
mov edx, 0x82
mov rcx, rbx
call fcn.140385850
movsxd rax, dword [rbx + 0x90]
test eax, eax
jle 0x1403c1e4c
mov rcx, rax
mov rax, qword [rbx + 0x88]
shl rcx, 5
mov word [rcx + rax - 0x1e], 2
cmp dword [rsp + 0x98], 0
movsxd rcx, dword [rbx + 0x90]
mov eax, dword [rbx + 0x94]
je 0x1403c1ee9
lea edx, [rcx + 2]
cmp eax, ecx
jg 0x1403c1e8b
mov r9d, edx
mov dword [rsp + 0x20], 0
mov edx, reloc.SinoSPE.dll_Ordinal_39
mov r8d, r14d
mov rcx, rbx
call fcn.140301d30
jmp 0x1403c1ebc
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
mov rax, rcx
shl rax, 5
add rax, qword [rbx + 0x88]
xor ecx, ecx
mov dword [rax], reloc.SinoSPE.dll_Ordinal_39
mov dword [rax + 4], r14d
mov dword [rax + 8], edx
mov dword [rax + 0xc], ecx
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], rcx
mov edx, 9
mov rcx, rbx
call fcn.1403857e0
cmp byte [rsp + 0x88], 0x4c
mov r15d, eax
mov dword [rsp + 0x80], eax
je 0x1403c1fec
xor r15d, r15d
jmp 0x1403c1f6d
movzx ebp, byte [rsp + 0x88]
xor r15d, r15d
cmp bpl, 0x4c
mov edx, r15d
setne dl
inc edx
add edx, ecx
cmp eax, ecx
jg 0x1403c1f20
mov r9d, edx
mov dword [rsp + 0x20], r15d
mov edx, reloc.SinoSPE.dll_Ordinal_39
mov r8d, r14d
mov rcx, rbx
call fcn.140301d30
jmp 0x1403c1f50
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
mov rax, rcx
shl rax, 5
add rax, qword [rbx + 0x88]
mov dword [rax], reloc.SinoSPE.dll_Ordinal_39
mov dword [rax + 4], r14d
mov dword [rax + 8], edx
mov dword [rax + 0xc], r15d
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], r15
cmp bpl, 0x4c
je 0x1403c1fec
mov r9d, r12d
xor r8d, r8d
mov edx, 9
mov rcx, rbx
call fcn.1403858c0
mov rbp, qword [r13 + 0x18]
test rbp, rbp
je 0x1403c1f8c
mov ebp, dword [rbp]
test ebp, ebp
je 0x1403c1f8f
mov edx, ebp
mov rcx, rdi
call fcn.140365fb0
mov r15d, eax
jmp 0x1403c1f8f
mov ebp, r15d
mov r8d, r15d
mov edx, r14d
mov rcx, rsi
call fcn.1403c3640
mov eax, dword [rsp + 0x38]
mov r8d, r15d
mov r9d, dword [rsp + 0x30]
mov rcx, rdi
mov rdx, qword [r13 + 0x18]
mov dword [rsp + 0x20], eax
call fcn.1403c3100
cmp ebp, 1
jne 0x1403c1fd8
test r15d, r15d
je 0x1403c1fe4
movzx eax, byte [rdi + 0x1f]
cmp al, 8
jae 0x1403c1fe4
mov dword [rdi + rax*4 + 0xe8], r15d
inc byte [rdi + 0x1f]
jmp 0x1403c1fe4
cmp ebp, dword [rdi + 0x28]
jle 0x1403c1fe4
mov dword [rdi + 0x28], ebp
mov dword [rdi + 0x2c], r15d
mov r15d, dword [rsp + 0x80]
mov edx, dword [rsp + 0x34]
mov r14, qword [rsp + 0x90]
test edx, edx
je 0x1403c2054
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x1403c2026
xor eax, eax
mov r9d, edx
mov edx, 9
mov dword [rsp + 0x20], eax
xor r8d, r8d
mov rcx, rbx
call fcn.140301d30
jmp 0x1403c2054
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
mov rax, rcx
shl rax, 5
add rax, qword [rbx + 0x88]
xor ecx, ecx
mov qword [rax], 9
mov dword [rax + 8], edx
mov dword [rax + 0xc], ecx
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], rcx
mov rcx, qword [rbx + 0x18]
not r12d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1403c2070
mov r8d, r12d
mov rdx, rbx
call fcn.140322800
jmp 0x1403c2081
mov rdx, qword [rcx + 0x50]
mov ecx, dword [rbx + 0x90]
movsxd r8, r12d
mov dword [rdx + r8*4], ecx
mov eax, r15d
add rsp, 0x40
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret