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

Disassembly:
mov r11, rsp
mov qword [r11 + 0x18], r8
mov qword [r11 + 0x10], rdx
push rbx
push r13
sub rsp, 0x168
mov qword [r11 - 0x18], rbp
mov qword [r11 - 0x20], rsi
mov rsi, rcx
mov qword [r11 - 0x28], rdi
mov rdi, r8
mov qword [r11 - 0x30], r12
xor r12d, r12d
mov eax, r12d
mov qword [r11 - 0x38], r14
mov dword [rsp + 0xac], eax
mov ebx, r12d
mov dword [rsp + 0x8c], eax
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x60], r12d
mov qword [r11 - 0xa8], rax
mov r13, qword [rcx]
mov qword [rsp + 0xe0], r13
mov dword [rsp + 0x98], 0xffffffff
mov qword [rsp + 0x68], rbx
mov dword [rsp + 0x88], r12d
mov dword [rsp + 0x90], r12d
mov dword [rsp + 0x9c], r12d
mov dword [rsp + 0xa0], r12d
mov dword [rsp + 0x94], r12d
mov dword [rsp + 0xa8], r12d
cmp dword [rcx + 0x4c], eax
jne 0x140061eae
cmp byte [r13 + 0x51], al
jne 0x140061eae
mov qword [r11 - 0x40], r15
call fcn.140061550
mov r15, rax
test rax, rax
je 0x140061e99
mov rax, qword [rsi]
mov edx, r12d
test dword [rax + 0x2c], 0x800000
je 0x140061947
mov rdx, r15
mov rcx, rsi
call fcn.14007e340
mov rdx, rax
mov rcx, rdx
test rdx, rdx
je 0x140061965
nop
cmp byte [rcx + 0x10], 0x6d
jne 0x14006195c
movzx eax, byte [rcx + 0x11]
or ebx, eax
mov rcx, qword [rcx + 0x40]
test rcx, rcx
jne 0x140061950
mov r14, qword [r15 + 0x18]
test ebx, ebx
mov rdi, r12
mov qword [rsp + 0xc0], r14
cmovne rdi, rdx
mov ebx, 1
mov qword [rsp + 0xe8], rdi
test rdi, rdi
jne 0x1400619c6
mov rax, qword [rsi]
test dword [rax + 0x2c], 0x80000
je 0x1400619c1
mov rcx, qword [r15 + 0x68]
lea r8, [rsp + 0x180]
mov rdx, qword [r15]
add rcx, 0x50
call fcn.14001bbf0
test rax, rax
je 0x1400619bb
cmp qword [rax + 0x10], r12
jne 0x1400619c6
cmp qword [r15 + 0x20], r12
jne 0x1400619c6
mov ebp, r12d
jmp 0x1400619c8
mov ebp, ebx
mov rdx, r15
mov dword [rsp + 0xb0], ebp
mov rcx, rsi
call fcn.14005c6c0
test eax, eax
jne 0x140062456
mov r8d, r12d
test rdi, rdi
mov rdx, r15
mov rcx, rsi
setne r8b
call fcn.140061610
test eax, eax
jne 0x140062456
mov rdx, qword [r15 + 0x68]
mov rcx, r13
call fcn.140072ea0
mov r8, qword [r15]
xor r9d, r9d
movsxd rdi, eax
mov rax, qword [r13 + 0x20]
mov rcx, rdi
shl rcx, 5
lea edx, [r9 + 9]
mov rcx, qword [rcx + rax]
mov qword [rsp + 0x20], rcx
mov rcx, rsi
call fcn.1400586a0
mov ebx, eax
cmp eax, 1
je 0x140062456
mov r12d, dword [rsi + 0x50]
xor edx, edx
mov rax, qword [rsp + 0x188]
mov dword [rsp + 0x78], r12d
mov dword [rsp + 0xa4], edx
mov dword [rax + 0x50], r12d
inc dword [rsi + 0x50]
mov rax, qword [r15 + 0x10]
mov ecx, dword [rsi + 0x50]
test rax, rax
je 0x140061a87
nop dword [rax]
inc ecx
inc edx
mov dword [rsi + 0x50], ecx
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x140061a70
mov dword [rsp + 0xa4], edx
test r14, r14
je 0x140061aaa
mov rax, qword [rsi + 0x230]
mov qword [rsp + 0x70], rax
mov rax, qword [r15]
mov qword [rsi + 0x230], rax
mov qword [rsp + 0xd0], rsi
mov rcx, rsi
call fcn.140076f80
mov r14, rax
test rax, rax
je 0x140061e8c
cmp byte [rsi + 0x1e], 0
jne 0x140061acb
or dword [rax + 0x8c], 4
mov r8d, edi
mov edx, 1
mov rcx, rsi
call fcn.14005fb50
cmp qword [rsp + 0xc0], 0
je 0x140061b12
mov r8, qword [rsp + 0x190]
mov r9d, r12d
mov rdx, r15
mov rcx, rsi
call fcn.1400616b0
mov eax, r12d
mov dword [rsp + 0x60], r12d
mov dword [rsp + 0xac], eax
mov dword [rsp + 0x8c], eax
mov rdx, qword [rsp + 0x190]
lea rcx, [rsp + 0xf0]
xor eax, eax
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0xf8], rax
call fcn.14004d4f0
test eax, eax
jne 0x140061e8c
test byte [r13 + 0x2c], 0x80
je 0x140061b9f
inc dword [rsi + 0x54]
xor r8d, r8d
mov eax, dword [rsi + 0x54]
mov rcx, r14
mov r9d, eax
mov dword [rsp + 0x98], eax
mov dword [rsp + 0x20], 0
lea edx, [r8 + 0x17]
call fcn.140037d60
test ebx, ebx
jne 0x140061c57
cmp qword [rsp + 0x190], 0
jne 0x140061c57
test ebp, ebp
jne 0x140061c57
test byte [r15 + 0x46], 0x10
jne 0x140061c57
mov rax, qword [r15]
mov r9b, 1
mov r8d, dword [r15 + 0x38]
mov edx, edi
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.140058770
test byte [r15 + 0x46], 0x20
jne 0x140061c1c
mov r8d, dword [rsp + 0x98]
lea edx, [rbp + 0x77]
mov rbx, qword [r15]
mov r9d, edi
mov dword [rsp + 0x20], r8d
mov rcx, r14
mov r8d, dword [r15 + 0x38]
call fcn.140037d60
lea r9d, [rbp - 2]
mov r8, rbx
mov edx, eax
mov rcx, r14
call fcn.1400387d0
mov rbx, qword [r15 + 0x10]
xor r12d, r12d
test rbx, rbx
je 0x1400623c2
nop dword [rax]
mov r8d, dword [rbx + 0x58]
mov r9d, edi
mov edx, 0x77
mov dword [rsp + 0x20], r12d
mov rcx, r14
call fcn.140037d60
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140061c30
jmp 0x1400623c2
test ebp, ebp
mov ebx, 0x200c
mov eax, 0xc
cmovne bx, ax
test byte [r15 + 0x46], 0x20
jne 0x140061ca4
inc dword [rsi + 0x54]
mov eax, 1
xor ebp, ebp
mov word [rsp + 0x180], ax
movzx edi, ax
mov dword [rsp + 0x20], ebp
mov eax, dword [rsi + 0x54]
xor r8d, r8d
mov r9d, eax
mov dword [rsp + 0x9c], eax
lea edx, [rbp + 0x1a]
mov rcx, r14
call fcn.140037d60
jmp 0x140061d1d
mov rbp, qword [r15 + 0x10]
test rbp, rbp
je 0x140061cc2
nop dword [rax]
mov eax, dword [rbp + 0x64]
and al, 3
cmp al, 2
je 0x140061cc2
mov rbp, qword [rbp + 0x28]
test rbp, rbp
jne 0x140061cb0
movsx edi, word [rbp + 0x5e]
mov edx, 0x39
mov eax, dword [rsi + 0x54]
mov r9d, edi
mov word [rsp + 0x180], di
mov dword [rsp + 0x20], 0
lea ecx, [rax + 1]
add eax, edi
mov dword [rsp + 0x88], ecx
mov ecx, dword [rsi + 0x50]
mov r8d, ecx
mov dword [rsi + 0x54], eax
mov dword [rsp + 0x90], ecx
lea eax, [rcx + 1]
mov rcx, r14
mov dword [rsi + 0x50], eax
call fcn.140037d60
mov rdx, rbp
mov dword [rsp + 0xa8], eax
mov rcx, rsi
call fcn.1400388e0
mov r8, qword [rsp + 0x190]
lea eax, [r12 + 1]
mov rdx, qword [rsp + 0x188]
xor r9d, r9d
mov dword [rsp + 0x30], eax
mov rcx, rsi
mov word [rsp + 0x28], bx
mov qword [rsp + 0x20], 0
call fcn.14008e4b0
mov qword [rsp + 0xb8], rax
test rax, rax
je 0x140061e8c
test byte [r13 + 0x2c], 0x80
mov rbx, qword [rax + 0x4c]
movzx eax, byte [rax + 0x36]
mov dword [rsp + 0x198], eax
mov qword [rsp + 0xd8], rbx
mov qword [rsp + 0xc8], rbx
je 0x140061da8
mov r8d, dword [rsp + 0x98]
mov r9d, 1
mov rcx, r14
mov dword [rsp + 0x20], 0
lea edx, [r9 + 0x24]
call fcn.140037d60
test rbp, rbp
je 0x140061e11
movsx rax, di
xor edi, edi
test rax, rax
jle 0x140061e07
mov r12d, dword [rsp + 0x88]
mov rbx, rax
mov r13d, dword [rsp + 0x78]
nop dword [rax + rax]
mov rax, qword [rbp + 8]
mov r8d, r13d
mov rdx, r15
mov dword [rsp + 0x20], r12d
mov rcx, r14
movsx r9d, word [rax + rdi*2]
call fcn.140051650
inc r12d
inc rdi
cmp rdi, rbx
jl 0x140061dd0
mov rbx, qword [rsp + 0xd8]
mov r13, qword [rsp + 0xe0]
mov r12d, dword [rsp + 0x88]
jmp 0x140061e3c
mov eax, dword [rsi + 0x54]
mov r9d, r12d
inc eax
mov byte [rsp + 0x28], 0
or r8d, 0xffffffff
mov dword [rsp + 0x20], eax
mov rdx, r15
mov rcx, rsi
call fcn.140051730
mov r12d, eax
cmp eax, dword [rsi + 0x54]
jle 0x140061e3c
mov dword [rsi + 0x54], eax
cmp dword [rsp + 0x198], 0
je 0x140061f9e
movzx eax, word [rsp + 0x180]
mov rcx, r13
mov edi, dword [rsp + 0xa4]
mov dword [rsp + 0x80], eax
lea eax, [rdi + 2]
movsxd rdx, eax
call fcn.140017900
mov qword [rsp + 0x68], rax
mov rcx, rax
test rax, rax
jne 0x140061f33
mov rcx, qword [rsp + 0xb8]
call fcn.14008eee0
mov rbx, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x190]
mov rdx, qword [rsp + 0x188]
mov rax, qword [rsp + 0x70]
mov r15, qword [rsp + 0x138]
mov rsi, qword [rsp + 0xd0]
mov r14, qword [rsp + 0x140]
mov r12, qword [rsp + 0x148]
mov rbp, qword [rsp + 0x160]
test rsi, rsi
je 0x140061eda
mov qword [rsi + 0x230], rax
mov rcx, r13
call fcn.14005f2d0
mov rdx, rdi
mov rcx, r13
call fcn.14004e850
mov rdi, qword [rsp + 0x150]
mov rsi, qword [rsp + 0x158]
test rbx, rbx
je 0x14006249b
test r13, r13
je 0x140062493
cmp qword [r13 + 0x328], 0
je 0x14006245e
mov rdx, rbx
mov rcx, r13
call fcn.140017620
add rsp, 0x168
pop r13
pop rbx
ret
lea eax, [rdi + 1]
mov edx, 1
movsxd rdi, eax
mov r8, rdi
call fcn.1400c1990
mov rdx, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
mov byte [rdi + rdx], 0
test ebx, ebx
js 0x140061f60
sub ebx, ecx
movsxd rax, ebx
mov byte [rax + rdx], 0
mov edi, dword [rsp + 0xcc]
test edi, edi
js 0x140061f75
mov eax, edi
sub eax, ecx
cdqe
mov byte [rax + rdx], 0
mov eax, dword [rsp + 0xa8]
test eax, eax
je 0x140061f8a
mov edx, eax
mov rcx, r14
call fcn.140038760
mov rcx, r14
call fcn.140038130
mov dword [rsp + 0xa0], eax
jmp 0x140062041
test rbp, rbp
je 0x140062007
inc dword [rsi + 0x54]
mov rdx, rbp
mov rcx, qword [rsi]
mov r12d, dword [rsi + 0x54]
mov dword [rsp + 0x80], 0
call fcn.140069380
movsx ebx, word [rsp + 0x180]
mov edx, 0x31
mov r8d, dword [rsp + 0x88]
mov r9d, ebx
mov rcx, r14
mov dword [rsp + 0x20], r12d
mov rdi, rax
call fcn.140037d60
mov r9d, ebx
mov r8, rdi
mov edx, eax
mov rcx, r14
call fcn.1400387d0
mov r8d, dword [rsp + 0x90]
mov edx, WSAStartup
jmp 0x140062021
mov r8d, dword [rsp + 0x9c]
mov eax, 1
mov word [rsp + 0x80], ax
mov edx, 0x81
mov r9d, r12d
mov dword [rsp + 0x20], 0
mov rcx, r14
call fcn.140037d60
mov rcx, qword [rsp + 0xb8]
call fcn.14008eee0
cmp qword [rsp + 0xc0], 0
jne 0x1400620c3
xor ebx, ebx
cmp dword [rsp + 0x198], 2
jne 0x140062062
mov rcx, rsi
call fcn.14004fe80
mov ebx, eax
mov r9d, dword [rsp + 0x78]
lea rax, [rsp + 0x8c]
mov qword [rsp + 0x30], rax
mov r8d, 0x37
lea rax, [rsp + 0x60]
mov rdx, r15
mov qword [rsp + 0x28], rax
mov rcx, rsi
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x20], rax
call fcn.14006c8b0
mov r10d, dword [rsp + 0x198]
cmp r10d, 2
jne 0x1400620ba
mov edx, ebx
mov rcx, r14
call fcn.140038410
mov edi, dword [rsp + 0x8c]
jmp 0x1400620d7
mov edi, dword [rsp + 0x8c]
jmp 0x1400620d2
mov edi, dword [rsp + 0xac]
mov r10d, dword [rsp + 0x198]
test r10d, r10d
je 0x140062129
test byte [r15 + 0x46], 0x10
mov r8d, dword [rsp + 0x60]
mov ebx, dword [rsp + 0x80]
jne 0x1400621b0
mov rcx, qword [rsp + 0x68]
mov eax, r8d
sub eax, dword [rsp + 0x78]
cdqe
cmp byte [rax + rcx], 0
je 0x1400621a5
mov r9d, dword [rsp + 0xa0]
mov edx, 0x45
movsx eax, bx
mov rcx, r14
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r12d
call fcn.140038090
jmp 0x140062198
xor r9d, r9d
mov rcx, r14
test rbp, rbp
je 0x140062173
mov r8d, dword [rsp + 0x90]
lea edx, [r9 + 0x6d]
mov dword [rsp + 0x20], r9d
call fcn.140037d60
mov r8d, dword [rsp + 0x90]
mov r9d, r12d
mov edx, 0x66
mov dword [rsp + 0x94], eax
mov rcx, r14
mov dword [rsp + 0x20], 0
call fcn.140037d60
jmp 0x140062191
mov r8d, dword [rsp + 0x9c]
mov edx, 0x82
mov dword [rsp + 0x20], r12d
call fcn.140037d60
mov dword [rsp + 0x94], eax
mov ebx, dword [rsp + 0x80]
mov r10d, dword [rsp + 0x198]
mov r8d, dword [rsp + 0x60]
test byte [r15 + 0x46], 0x10
je 0x140062262
mov rbx, qword [r15 + 0x58]
test rbx, rbx
je 0x1400621ce
nop dword [rax]
cmp qword [rbx], r13
je 0x1400621ce
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1400621c0
mov rdx, r15
mov rcx, rsi
call fcn.140084350
mov r9d, 1
mov dword [rsp + 0x20], r12d
xor r8d, r8d
mov rcx, r14
lea edx, [r9 + 0xc]
call fcn.140037d60
mov r9d, 0xfffffff6
mov r8, rbx
mov edx, eax
mov rcx, r14
call fcn.1400387d0
mov rax, qword [r14]
mov ecx, dword [r14 + 0x3c]
dec ecx
cmp byte [rax + 0x51], 0
je 0x14006221e
lea rax, [0x140120b10]
jmp 0x14006222d
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 8]
lea rax, [rax + rcx*8]
mov byte [rax + 3], 2
mov rcx, rsi
mov rax, qword [rsi + 0x1c0]
test rax, rax
cmovne rcx, rax
mov eax, dword [rsp + 0x198]
mov byte [rcx + 0x21], 1
cmp eax, 1
jne 0x1400622c4
cmp qword [rsi + 0x1c0], 0
jne 0x1400622c8
mov byte [rsi + 0x20], 0
jmp 0x1400622c8
xor ecx, ecx
cmp byte [rsi + 0x1e], cl
sete cl
or eax, 0xffffffff
cmp dword [rsp + 0xb0], 0
jne 0x140062287
cmp dword [rsp + 0xcc], r8d
cmovne eax, dword [rsp + 0xcc]
mov dword [rsp + 0x50], eax
mov r9d, r8d
mov r8, qword [rsp + 0xe8]
mov rdx, r15
mov byte [rsp + 0x48], r10b
mov byte [rsp + 0x40], 0xa
mov byte [rsp + 0x38], cl
mov rcx, rsi
mov word [rsp + 0x30], bx
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], edi
call fcn.1400624b0
mov eax, dword [rsp + 0x198]
test eax, eax
je 0x140062307
mov r8, qword [r14 + 0x30]
mov rdx, qword [r8 + 0x80]
test rdx, rdx
je 0x1400622eb
mov eax, dword [rsp + 0xa0]
not eax
movsxd rcx, eax
mov eax, dword [r14 + 0x3c]
mov dword [rdx + rcx*4], eax
mov eax, dword [r14 + 0x3c]
mov rcx, qword [rsp + 0xb8]
dec eax
mov dword [r8 + 0x64], eax
call fcn.14008eee0
xor r12d, r12d
jmp 0x14006235b
xor r12d, r12d
mov rcx, r14
mov dword [rsp + 0x20], r12d
test rbp, rbp
je 0x140062338
mov ebx, dword [rsp + 0x94]
lea edx, [r12 + 8]
mov r8d, dword [rsp + 0x90]
lea r9d, [rbx + 1]
call fcn.140037d60
mov edx, ebx
jmp 0x140062353
mov r9d, dword [rsp + 0x94]
xor r8d, r8d
lea edx, [r8 + 0xe]
call fcn.140037d60
mov edx, dword [rsp + 0x94]
mov rcx, r14
call fcn.140038410
cmp qword [rsp + 0xc0], 0
jne 0x1400623c2
test byte [r15 + 0x46], 0x10
jne 0x1400623c2
test rbp, rbp
jne 0x14006238a
mov r8d, dword [rsp + 0x60]
lea edx, [rbp + 0x3d]
xor r9d, r9d
mov dword [rsp + 0x20], r12d
mov rcx, r14
call fcn.140037d60
mov rbx, qword [r15 + 0x10]
test rbx, rbx
je 0x1400623c2
nop dword [rax]
nop word [rax + rax]
xor r9d, r9d
mov dword [rsp + 0x20], r12d
mov r8d, edi
mov rcx, r14
lea edx, [r9 + 0x3d]
call fcn.140037d60
mov rbx, qword [rbx + 0x28]
inc edi
test rbx, rbx
jne 0x1400623a0
cmp byte [rsi + 0x1e], 0
jne 0x1400623da
cmp qword [rsi + 0x1c8], 0
jne 0x1400623da
mov rcx, rsi
call fcn.140069a70
test byte [r13 + 0x2c], 0x80
je 0x140061e8c
cmp byte [rsi + 0x1e], 0
jne 0x140061e8c
cmp qword [rsi + 0x1c8], 0
jne 0x140061e8c
mov r8d, dword [rsp + 0x98]
mov ebx, 1
mov r9d, ebx
mov dword [rsp + 0x20], r12d
mov rcx, r14
lea edx, [rbx + 0x20]
call fcn.140037d60
mov edx, ebx
mov rcx, r14
call fcn.140039d60
mov rax, qword [r14]
cmp byte [rax + 0x51], 0
jne 0x140061e8c
mov rcx, qword [r14 + 0x20]
lea rdx, str.rows_deleted
movzx r9d, bl
mov qword [rsp + 0x20], r12
or r8d, 0xffffffff
call fcn.140036f60
jmp 0x140061e8c
mov rbx, r12
jmp 0x140061e91
cmp rbx, qword [r13 + 0x170]
jb 0x140062493
cmp rbx, qword [r13 + 0x178]
jae 0x140062493
mov rax, qword [r13 + 0x168]
mov qword [rbx], rax
dec dword [r13 + 0x154]
mov qword [r13 + 0x168], rbx
add rsp, 0x168
pop r13
pop rbx
ret
mov rcx, rbx
call fcn.1400175b0
add rsp, 0x168
pop r13
pop rbx
ret