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

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov rsi, qword [rcx + 0x10]
mov rdi, rcx
mov rcx, rsi
mov r14, r9
mov rbp, r8
mov eax, dword [rsi + 0x3c]
mov dword [rsp + 0x30], eax
call fcn.140056400
mov r13d, dword [rsp + 0xa8]
lea r12, [0x140330198]
xor ebx, ebx
mov dword [rsp + 0x80], eax
mov ecx, eax
test r13d, r13d
je 0x140095882
xor r9d, r9d
mov dword [rsp + 0x20], ebx
mov r8d, r13d
lea edx, [rbx + 0x2e]
mov rcx, rsi
call fcn.140056030
mov r15, qword [rsp + 0xb0]
mov r12d, eax
test r15, r15
je 0x1400957b0
inc dword [r15]
mov eax, dword [rbp + 0xc]
lea r9d, [r13 + 1]
mov r8d, dword [rbp + 8]
mov edx, Ordinal_46
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140056030
mov r9d, 0xfffffffa
mov r8, r15
mov edx, eax
mov rcx, rsi
mov ebx, eax
call fcn.140056aa0
mov r9d, dword [rsp + 0x80]
lea r8d, [rbx + 2]
mov edx, Ordinal_46
mov dword [rsp + 0x20], r8d
mov rcx, rsi
call fcn.140056030
mov ecx, dword [rsi + 0x3c]
mov rax, qword [rsi + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
mov edx, dword [rsi + 0x3c]
test r12d, r12d
jns 0x140095817
lea r12d, [rdx - 1]
mov rax, qword [rsi]
cmp byte [rax + 0x51], 0
je 0x14009582c
lea r12, [0x140330198]
mov rax, r12
jmp 0x140095842
movsxd rax, r12d
lea r12, [0x140330198]
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 8]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
lea r9d, [r13 + 1]
mov eax, dword [rbp + 0xc]
mov edx, Ordinal_33
mov r8d, dword [rbp + 8]
dec eax
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140056030
xor ebx, ebx
mov r9d, r13d
mov rcx, rsi
mov dword [rsp + 0x20], ebx
lea edx, [rbx + 0x17]
lea r8d, [rbx + 1]
call fcn.140056030
mov ecx, dword [rsp + 0x80]
mov rax, qword [rdi]
cmp byte [rax + 0x51], 0
je 0x140095892
xor eax, eax
jmp 0x140095b81
mov r13, qword [rsp + 0x88]
mov r8d, dword [r13 + 0x10]
test r8d, r8d
jle 0x1400958bb
mov r9d, ecx
mov dword [rsp + 0x20], 1
mov rcx, rsi
mov edx, 0x8a
call fcn.140056030
movzx ecx, byte [r14]
sub ecx, 0xa
je 0x140095af6
sub ecx, 1
je 0x140095a37
sub ecx, 1
je 0x140095975
cmp ecx, 1
je 0x14009590c
mov r9d, dword [rbp + 0xc]
mov edx, reloc.WLDAP32.dll_Ordinal_33
mov r8d, dword [rbp + 8]
mov rcx, rsi
mov dword [rsp + 0x20], ebx
call fcn.140056030
mov r8d, dword [rbp + 0xc]
mov rcx, rdi
mov edx, dword [rbp + 8]
call fcn.14006f1f0
jmp 0x140095b0b
cmp dword [r14 + 8], 0
jne 0x140095946
mov ecx, dword [rbp + 0xc]
mov edx, dword [rdi + 0x44]
mov r8d, dword [rdi + 0x48]
cmp ecx, edx
jg 0x14009592f
lea eax, [r8 + rcx]
sub edx, ecx
mov dword [rdi + 0x48], eax
mov dword [rdi + 0x44], edx
jmp 0x14009593b
mov eax, dword [rdi + 0x54]
lea r8d, [rax + 1]
add eax, ecx
mov dword [rdi + 0x54], eax
mov dword [r14 + 8], r8d
mov eax, dword [rbp + 0xc]
mov dword [r14 + 0xc], eax
mov r9d, dword [rbp + 0xc]
mov rcx, rdi
mov r8d, dword [r14 + 8]
mov edx, dword [rbp + 8]
call fcn.14006f570
mov r8d, dword [r14 + 4]
xor r9d, r9d
mov rcx, rsi
mov dword [rsp + 0x20], ebx
lea edx, [r9 + 0x14]
call fcn.140056030
jmp 0x140095b0b
movzx eax, byte [rdi + 0x1f]
test al, al
jne 0x140095986
inc dword [rdi + 0x54]
mov r15d, dword [rdi + 0x54]
jmp 0x140095993
dec al
movzx eax, al
mov byte [rdi + 0x1f], al
mov r15d, dword [rdi + rax*4 + 0x24]
movzx eax, byte [rdi + 0x1f]
test al, al
jne 0x1400959a3
inc dword [rdi + 0x54]
mov ebx, dword [rdi + 0x54]
jmp 0x1400959af
dec al
movzx eax, al
mov byte [rdi + 0x1f], al
mov ebx, dword [rdi + rax*4 + 0x24]
mov r9d, dword [rbp + 0xc]
mov edx, gethostbyname
mov r8d, dword [rbp + 8]
mov rcx, rsi
mov dword [rsp + 0x20], r15d
call fcn.140056030
mov r8d, dword [r14 + 4]
mov r9d, ebx
mov edx, Ordinal_79
mov dword [rsp + 0x20], 0
mov rcx, rsi
call fcn.140056030
mov r8d, dword [r14 + 4]
mov r9d, r15d
mov edx, 0x54
mov dword [rsp + 0x20], ebx
mov rcx, rsi
call fcn.140056030
mov rax, qword [rsi]
mov ecx, dword [rsi + 0x3c]
dec ecx
cmp byte [rax + 0x51], 0
jne 0x140095a1a
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 8]
lea r12, [rax + rcx*8]
mov edx, ebx
mov byte [r12 + 3], 8
mov rcx, rdi
call fcn.140071f90
mov edx, r15d
call fcn.140071f90
jmp 0x140095b0b
mov rax, qword [r13]
movzx ebx, byte [r14 + 1]
mov rcx, qword [rax + 8]
mov rcx, qword [rcx]
call fcn.14006b450
test al, al
je 0x140095a65
test bl, bl
je 0x140095a6d
cmp al, 0x43
jge 0x140095a61
cmp bl, 0x43
jge 0x140095a61
mov al, 0x41
jmp 0x140095a6f
mov al, 0x43
jmp 0x140095a6f
test bl, bl
jne 0x140095a6d
mov al, 0x41
jmp 0x140095a6f
add al, bl
mov byte [r14 + 1], al
movzx eax, byte [rdi + 0x1f]
test al, al
jne 0x140095a83
inc dword [rdi + 0x54]
mov ebx, dword [rdi + 0x54]
jmp 0x140095a8f
dec al
movzx eax, al
mov byte [rdi + 0x1f], al
mov ebx, dword [rdi + rax*4 + 0x24]
mov r8d, dword [rbp + 8]
mov r9d, 1
mov rcx, rsi
mov dword [rsp + 0x20], ebx
lea edx, [r9 + 0x30]
call fcn.140056030
mov r9d, 1
lea r8, [r14 + 1]
mov edx, eax
mov rcx, rsi
call fcn.140056aa0
mov edx, dword [rbp + 8]
mov r8d, 1
mov rcx, rdi
call fcn.14006f1f0
mov r8d, dword [r14 + 4]
mov r9d, ebx
mov rcx, rsi
mov dword [rsp + 0x20], 0
mov edx, reloc.WS2_32.dll_WSAGetLastError
call fcn.140056030
mov edx, ebx
mov rcx, rdi
call fcn.140071f90
jmp 0x140095b0b
mov r8d, dword [r14 + 4]
mov r9d, 1
mov edx, dword [rbp + 8]
mov rcx, rdi
call fcn.14006f570
mov r8d, dword [r13 + 0xc]
test r8d, r8d
je 0x140095b31
mov r9d, dword [rsp + 0xb8]
mov edx, Ordinal_143
mov rcx, rsi
mov dword [rsp + 0x20], 0
call fcn.140056030
mov r9, qword [rsi + 0x30]
mov rcx, qword [r9 + 0x80]
test rcx, rcx
je 0x140095b55
or edx, 0xffffffff
sub edx, dword [rsp + 0x80]
movsxd r8, edx
mov edx, dword [rsi + 0x3c]
mov dword [rcx + r8*4], edx
mov edx, dword [rsi + 0x3c]
mov rcx, rsi
mov r8d, dword [rsp + 0xa0]
dec edx
mov dword [r9 + 0x64], edx
xor r9d, r9d
mov dword [rsp + 0x20], 0
lea edx, [r9 + 0x10]
call fcn.140056030
mov eax, dword [rsp + 0x30]
mov rbx, qword [rsp + 0x90]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret