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

Disassembly:
push rdi
push rsi
push rbp
push rbx
sub rsp, 0x28
mov rbx, rcx
mov rcx, rbx
call fcn.140098330
mov rcx, rbx
call fcn.140098150
mov rsi, rax
mov rcx, qword [rsi + 8]
lea rax, [0x1403bb378]
test rcx, rcx
cmove rcx, rax
cmp dword [rcx + 8], 0
je 0x140098ab5
cmp qword [rsi + 0x40], 0
je 0x1400989cb
cmp byte [rsi + 0x7d], 0
je 0x140098adb
cmp qword [rsi + 0x50], 0
je 0x1400989dc
cmp byte [rsi + 0x7e], 0
je 0x140098b01
cmp qword [rsi + 0x48], 0
je 0x1400989ed
cmp byte [rsi + 0x7f], 0
je 0x140098b27
mov rcx, qword [rsi + 0x10]
lea rax, [0x1403bb378]
test rcx, rcx
cmove rcx, rax
cmp dword [rcx + 8], 0
je 0x140098a15
mov rcx, rsi
call fcn.14009be40
test eax, eax
jne 0x140098b4d
mov rcx, rsi
call fcn.14009be40
test eax, eax
je 0x140098a66
mov rcx, rsi
call fcn.14009bdd0
mov rcx, qword [rax + 8]
lea r10, [0x140421b40]
call qword [r10]
mov edi, eax
xor ebp, ebp
test edi, edi
jle 0x140098a66
mov rcx, rsi
call fcn.14009bdd0
mov rcx, qword [rax + 8]
mov edx, ebp
lea r10, [0x140421ed0]
call qword [r10]
test rax, rax
je 0x140098b7c
inc ebp
cmp ebp, edi
jl 0x140098a3f
cmp byte [rbx + 0xf1], 0
jne 0x140098b73
lea rdx, [0x140418b6c]
lea rcx, [0x1403c6038]
call fcn.1401d58d0
cmp byte [rsi + 0x83], 0
jne 0x140098aa2
mov rcx, rbx
mov rdx, rsi
add rsp, 0x28
pop rbx
pop rbp
pop rsi
pop rdi
jmp fcn.140098fb0
mov rcx, rbx
mov rdx, rsi
add rsp, 0x28
pop rbx
pop rbp
pop rsi
pop rdi
jmp 0x14009a4f0
lea rcx, [0x14043cc60]
call fcn.140007bf0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1403cb570]
call fcn.140177350
mov rcx, rbx
call fcn.1400086c0
lea rcx, [0x14043cc60]
call fcn.140007bf0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1403e4f18]
call fcn.140177350
mov rcx, rbx
call fcn.1400086c0
lea rcx, [0x14043cc60]
call fcn.140007bf0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1403e4fc8]
call fcn.140177350
mov rcx, rbx
call fcn.1400086c0
lea rcx, [0x14043cc60]
call fcn.140007bf0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1403e4e68]
call fcn.140177350
mov rcx, rbx
call fcn.1400086c0
lea rcx, [0x14043cc60]
call fcn.140007bf0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1403de538]
call fcn.140177350
mov rcx, rbx
call fcn.1400086c0
mov rcx, rbx
call fcn.14017f3d0
int3
lea rcx, [0x14043af90]
call fcn.140007bf0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x140400960]
lea r8, [0x1403c78f0]
call fcn.140160880
mov rcx, rbx
call fcn.1400086c0
int3
push rdi
push rsi
push rbp
push rbx
sub rsp, 0xb8
xor eax, eax
mov qword [rsp + 0x98], rax
xorps xmm4, xmm4
movaps xmmword [rsp + 0xa0], xmm4
mov qword [rsp + 0xb0], rax
mov rsi, rcx
mov rbx, rdx
mov rcx, qword [rbx + 0x20]
lea rax, [0x1403bb378]
test rcx, rcx
cmove rcx, rax
cmp dword [rcx + 8], 0
jne 0x14009a7df
cmp qword [rbx + 0x68], 0
jne 0x14009a7df
cmp byte [rbx + 0x7d], 0
jne 0x14009a805
cmp byte [rbx + 0x7e], 0
jne 0x14009a805
cmp byte [rbx + 0x7f], 0
jne 0x14009a805
cmp qword [rbx + 0x40], 0
jne 0x14009a82b
cmp qword [rbx + 0x48], 0
jne 0x14009a851
cmp qword [rbx + 0x50], 0
jne 0x14009a877
cmp qword [rbx + 0x38], 0
jne 0x14009a89d
mov rcx, rbx
call fcn.14009beb0
mov rcx, qword [rbx + 8]
lea rdx, [0x1403bb378]
test rcx, rcx
cmove rcx, rdx
cmp dword [rcx + 8], 0
jg 0x14009a5b3
xor ecx, ecx
jmp 0x14009a5c5
mov rcx, qword [rbx + 8]
lea rdx, [0x1403bb378]
test rcx, rcx
cmove rcx, rdx
test rcx, rcx
jne 0x14009a5ce
xor edx, edx
jmp 0x14009a5e2
add rcx, 0xc
mov qword [rsp + 0xb0], rcx
mov rdx, qword [rsp + 0xb0]
mov rcx, qword [rbx + 0x28]
lea r8, [0x1403bb378]
test rcx, rcx
cmove rcx, r8
cmp dword [rcx + 8], 0
jg 0x14009a5fe
xor ecx, ecx
jmp 0x14009a610
mov rcx, qword [rbx + 0x28]
lea r8, [0x1403bb378]
test rcx, rcx
cmove rcx, r8
test rcx, rcx
jne 0x14009a61a
xor r8d, r8d
jmp 0x14009a62e
add rcx, 0xc
mov qword [rsp + 0xa8], rcx
mov r8, qword [rsp + 0xa8]
xor ecx, ecx
cmp dword [rax + 8], 0
cmovle rax, rcx
test rax, rax
jne 0x14009a641
xor ecx, ecx
jmp 0x14009a655
add rax, 0xc
mov qword [rsp + 0xa0], rax
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rbx + 0x18]
lea r10, [0x1403bb378]
test rax, rax
cmove rax, r10
cmp dword [rax + 8], 0
jg 0x14009a671
xor eax, eax
jmp 0x14009a683
mov rax, qword [rbx + 0x18]
lea r10, [0x1403bb378]
test rax, rax
cmove rax, r10
test rax, rax
jne 0x14009a68d
xor r10d, r10d
jmp 0x14009a6a1
add rax, 0xc
mov qword [rsp + 0x98], rax
mov r10, qword [rsp + 0x98]
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
movups xmmword [rsp + 0x38], xmm0
movups xmmword [rsp + 0x48], xmm0
movups xmmword [rsp + 0x58], xmm0
movups xmmword [rsp + 0x68], xmm0
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rsp + 0x88], xmm0
mov dword [rsp + 0x28], WSACleanup
mov dword [rsp + 0x2c], 0x140
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x50], r10
cmp byte [rbx + 0x80], 0
je 0x14009a702
mov rcx, qword [rbx + 0x70]
mov qword [rsp + 0x30], rcx
jmp 0x14009a710
mov ecx, dword [rsp + 0x2c]
or ecx, 0x400
mov dword [rsp + 0x2c], ecx
mov ecx, dword [rbx + 0x78]
call fcn.14009a960
mov dword [rsp + 0x58], eax
lea rcx, [0x14042b9a0]
call fcn.140007bf0
mov rdi, rax
lea rcx, [rsp + 0x28]
mov qword [rdi + 8], rcx
mov rcx, rdi
call fcn.14009ab00
test eax, eax
je 0x14009a8c3
cmp qword [rsp + 0x90], 0
je 0x14009a7b1
mov rdi, qword [rsp + 0x90]
lea rcx, [0x14042bd78]
call fcn.140007c30
xor ecx, ecx
mov qword [rax + 8], rcx
mov dword [rax + 0x10], 4
mov byte [rax + 0x14], 1
mov byte [rax + 0x15], 1
mov qword [rax + 8], rdi
lea rcx, [rsi + 0x18]
mov rdx, rax
call fcn.140007e00
mov byte [rsi + 0xe5], 1
cmp byte [rsi + 0xea], 0
je 0x14009a7a0
mov rcx, rsi
call fcn.140098de0
mov eax, 1
add rsp, 0xb8
pop rbx
pop rbp
pop rsi
pop rdi
ret
xor eax, eax
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xb0], rax
add rsp, 0xb8
pop rbx
pop rbp
pop rsi
pop rdi
ret
lea rcx, [0x14043cc60]
call fcn.140007bf0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1403e9b00]
call fcn.140177350
mov rcx, rbx
call fcn.1400086c0
lea rcx, [0x14043cc60]
call fcn.140007bf0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1403e9a18]
call fcn.140177350
mov rcx, rbx
call fcn.1400086c0
lea rcx, [0x14043cc60]
call fcn.140007bf0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1403e4f18]
call fcn.140177350
mov rcx, rbx
call fcn.1400086c0
lea rcx, [0x14043cc60]
call fcn.140007bf0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1403e4e68]
call fcn.140177350
mov rcx, rbx
call fcn.1400086c0
lea rcx, [0x14043cc60]
call fcn.140007bf0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1403e4fc8]
call fcn.140177350
mov rcx, rbx
call fcn.1400086c0
lea rcx, [0x14043cc60]
call fcn.140007bf0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1403e9bf0]
call fcn.140177350
mov rcx, rbx
call fcn.1400086c0
mov esi, dword [rdi + 0x10]
test esi, esi
jne 0x14009a8d6
mov rcx, qword [rsp + 0x60]
call fcn.14009a9a0
mov esi, eax
cmp esi, 0x78
jne 0x14009a901
lea rcx, [0x14043d848]
call fcn.140007bf0
mov rsi, rax
mov rcx, rsi
lea rdx, [0x1403f9390]
call fcn.14017cd50
mov rcx, rsi
call fcn.1400086c0
cmp esi, 0xc1
je 0x14009a91f
cmp esi, 0xd8
je 0x14009a91f
mov ecx, esi
xor edx, edx
call fcn.140094090
mov rdi, rax
jmp 0x14009a926
lea rdi, [0x1403f1f18]
mov rcx, rbx
call fcn.14009be70
mov rbp, rax
mov rcx, rbx
call fcn.14009be90
mov r9, rax
mov r8, rbp
mov rcx, rdi
mov edx, esi
call fcn.140098d60
mov rcx, rax
call fcn.1400086c0
int3