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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x148
movdqa xmmword [rsp + 0x130], xmm7
movaps xmmword [rsp + 0x120], xmm6
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x14020eb28]
xor rax, rsp
mov qword [rsp + 0x118], rax
mov rcx, qword [rcx]
call fcn.14010acf0
or byte [rdi + 0x10], 8
mov qword [rsp + 0x70], rdi
mov byte [rdi + 0x98], al
mov rcx, qword [rsi]
call fcn.140109da0
mov qword [rsp + 0x78], rax
test rax, rax
mov qword [rsp + 0x88], rsi
je 0x14010bf65
mov rax, qword [rsp + 0x70]
add rax, 0x18
mov qword [rsp + 0xa0], rax
xorps xmm6, xmm6
lea r14, [rsp + 0xe0]
lea r12, [0x140218400]
movabs rdi, 0xaaaaaaaaaaaaaaab
mov rax, qword [rsi]
mov qword [rsp + 0x80], rax
mov rbp, qword [rsp + 0x70]
mov rax, qword [rbp + 0x28]
test rax, rax
je 0x14010b65e
movsxd rcx, dword [rbp + 0x20]
mov edx, dword [rax]
cmp ecx, edx
jge 0x14010b663
lea edx, [rcx + 1]
mov dword [rbp + 0x20], edx
mov rsi, qword [rax + rcx*8 + 8]
jmp 0x14010b6a5
mov edx, dword [rbp + 0x24]
jmp 0x14010b668
cmp edx, dword [rbp + 0x24]
jne 0x14010b682
inc edx
mov rcx, qword [rsp + 0xa0]
call fcn.14010ccb0
mov rbp, qword [rsp + 0x70]
mov rax, qword [rbp + 0x28]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [rbp + 0x18]
call fcn.140104e80
mov rsi, rax
mov rax, qword [rbp + 0x28]
movsxd rcx, dword [rbp + 0x20]
lea edx, [rcx + 1]
mov dword [rbp + 0x20], edx
mov qword [rax + rcx*8 + 8], rsi
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x78]
call fcn.14010a800
test rax, rax
mov qword [rsp + 0x90], rsi
je 0x14010ba98
mov rbp, rax
lea rax, [rsi + 0x30]
mov qword [rsp + 0xa8], rax
mov eax, dword [rsi + 0x10]
test al, 2
jne 0x14010b6ec
mov rcx, qword [rbp + 0x20]
or eax, 2
mov dword [rsi + 0x10], eax
mov qword [rsi + 0x70], rcx
mov rax, qword [rsi + 0x40]
test rax, rax
je 0x14010b70c
movsxd rcx, dword [rsi + 0x38]
mov edx, dword [rax]
cmp ecx, edx
jge 0x14010b711
lea edx, [rcx + 1]
mov dword [rsi + 0x38], edx
mov r15, qword [rax + rcx*8 + 8]
jmp 0x14010b74e
mov edx, dword [rsi + 0x3c]
jmp 0x14010b716
cmp edx, dword [rsi + 0x3c]
jne 0x14010b72b
inc edx
mov rcx, qword [rsp + 0xa8]
call fcn.14010ccb0
mov rax, qword [rsi + 0x40]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [rsi + 0x30]
call fcn.140104c70
mov r15, rax
mov rax, qword [rsi + 0x40]
movsxd rcx, dword [rsi + 0x38]
lea edx, [rcx + 1]
mov dword [rsi + 0x38], edx
mov qword [rax + rcx*8 + 8], r15
or byte [r15 + 0x10], 1
mov rcx, qword [r15 + 0x30]
cmp rcx, r12
je 0x14010b766
mov rdx, rbp
call fcn.140036da0
jmp 0x14010b772
lea rcx, [r15 + 0x30]
mov rdx, rbp
call fcn.1401061a0
mov rcx, qword [rbp + 0x28]
mov eax, dword [r15 + 0x10]
mov edx, eax
or edx, 4
mov dword [r15 + 0x10], edx
mov qword [r15 + 0x40], rcx
mov ecx, dword [rbp + 0x48]
mov edx, eax
or edx, 0xc
mov dword [r15 + 0x10], edx
mov dword [r15 + 0x48], ecx
cmp byte [rbp + 0xc0], 0xe0
jne 0x14010b7fd
or eax, 0xe
mov dword [r15 + 0x10], eax
mov rax, qword [r15 + 0x38]
test rax, rax
jne 0x14010b7bb
xor ecx, ecx
call fcn.140104c00
mov qword [r15 + 0x38], rax
mov ecx, dword [rbp + 0xc8]
mov ebx, dword [rax + 0x10]
mov edx, ebx
or edx, 8
mov dword [rax + 0x10], edx
mov dword [rax + 0x30], ecx
mov rcx, qword [rbp + 0x58]
mov edx, ebx
or edx, 9
mov dword [rax + 0x10], edx
mov qword [rax + 0x18], rcx
mov rcx, qword [rbp + 0x60]
mov edx, ebx
or edx, 0xb
mov dword [rax + 0x10], edx
mov qword [rax + 0x20], rcx
mov rcx, qword [rbp + 0x50]
or ebx, 0xf
mov dword [rax + 0x10], ebx
mov qword [rax + 0x28], rcx
mov rax, qword [rbp + 0x38]
cmp rax, qword [rbp + 0x30]
je 0x14010ba68
lea rax, [r15 + 0x18]
mov qword [rsp + 0x98], rax
mov r12d, 0x7c
xor r14d, r14d
xor r13d, r13d
mov rax, qword [r15 + 0x28]
test rax, rax
je 0x14010b844
movsxd rcx, dword [r15 + 0x20]
mov edx, dword [rax]
cmp ecx, edx
jge 0x14010b84a
lea edx, [rcx + 1]
mov dword [r15 + 0x20], edx
mov rax, qword [rax + rcx*8 + 8]
jmp 0x14010b886
mov edx, dword [r15 + 0x24]
jmp 0x14010b850
cmp edx, dword [r15 + 0x24]
jne 0x14010b865
inc edx
mov rcx, qword [rsp + 0x98]
call fcn.14010ccb0
mov rax, qword [r15 + 0x28]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [r15 + 0x18]
call fcn.140104a90
mov rcx, qword [r15 + 0x28]
movsxd rdx, dword [r15 + 0x20]
lea ebx, [rdx + 1]
mov dword [r15 + 0x20], ebx
mov qword [rcx + rdx*8 + 8], rax
mov r9, rbp
mov r8, qword [rbp + 0x30]
mov rbx, qword [r8 + r12 - 0x7c]
mov edx, dword [rax + 0x10]
mov ecx, edx
or ecx, 1
mov dword [rax + 0x10], ecx
mov qword [rax + 0x38], rbx
mov rcx, qword [r8 + r12 - 0x74]
mov esi, edx
or esi, 0x201
mov dword [rax + 0x10], esi
mov qword [rax + 0x78], rcx
mov rcx, qword [r8 + r12 - 0x6c]
mov ebp, edx
or ebp, 0x203
mov dword [rax + 0x10], ebp
mov qword [rax + 0x40], rcx
mov bl, byte [r8 + r12 - 0xc]
cmp bl, 0x2f
jg 0x14010b91a
cmp bl, 0xf0
je 0x14010b961
cmp bl, 0x10
mov rbp, r9
je 0x14010b9ce
cmp bl, 0x20
jne 0x14010ba18
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 2
mov rcx, qword [r8 + r12 - 4]
or edx, 0x22b
mov dword [rax + 0x10], edx
mov qword [rax + 0x50], rcx
jmp 0x14010ba18
cmp bl, 0x30
je 0x14010b9a5
cmp bl, 0x41
mov rbp, r9
je 0x14010b9f4
cmp bl, 0x51
jne 0x14010ba18
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 5
mov rcx, qword [r8 + r12 - 4]
or edx, 0x323
mov dword [rax + 0x10], edx
mov qword [rax + 0x70], rcx
jmp 0x14010ba18
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 6
mov ecx, dword [r8 + r12 - 4]
mov edi, edx
or edi, 0x263
mov dword [rax + 0x10], edi
movabs rdi, 0xaaaaaaaaaaaaaaab
mov dword [rax + 0x64], ecx
mov ecx, dword [r8 + r12]
or edx, 0x663
mov dword [rax + 0x10], edx
mov dword [rax + 0x80], ecx
jmp 0x14010b9c9
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 3
mov rcx, qword [r8 + r12 - 4]
or edx, 0x233
mov dword [rax + 0x10], edx
mov qword [rax + 0x58], rcx
mov rbp, r9
jmp 0x14010ba18
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 1
mov rcx, qword [r8 + r12 - 4]
or edx, 0x227
mov dword [rax + 0x10], edx
mov qword [rax + 0x48], rcx
jmp 0x14010ba18
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 4
mov rcx, qword [r8 + r12 - 4]
or edx, 0x2a3
mov dword [rax + 0x10], edx
mov qword [rax + 0x68], rcx
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0xd8]
sub rdx, rcx
sar rdx, 3
imul rdx, rdi
cmp r13, rdx
jae 0x14010ba48
add rax, 0x20
add rcx, r14
mov rdx, rax
xor r8d, r8d
call fcn.14010c120
inc r13
mov rax, qword [rbp + 0x38]
sub rax, qword [rbp + 0x30]
sar rax, 7
add r14, 0x18
sub r12, 0xffffffffffffff80
cmp r13, rax
jb 0x14010b823
mov rcx, qword [rsp + 0x80]
call fcn.14010a890
mov rbp, rax
test rax, rax
lea r14, [rsp + 0xe0]
lea r12, [0x140218400]
mov rsi, qword [rsp + 0x90]
jne 0x14010b6d7
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x78]
call fcn.14010a900
mov rbx, rax
lea rax, [rsp + 0xd0]
movups xmmword [rax], xmm6
mov qword [rsp + 0xc8], rax
mov rdi, qword [rbx]
add rbx, 8
cmp rdi, rbx
je 0x14010bb28
lea r9, [rdi + 0x20]
mov qword [rsp + 0x20], r9
lea rcx, [rsp + 0xc8]
mov rdx, r14
lea r8, [rsp + 0xd0]
call fcn.14010b110
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x14010bb03
mov rax, rcx
mov rcx, qword [rcx]
test rcx, rcx
jne 0x14010baf6
jmp 0x14010bb20
mov rax, qword [rdi + 0x10]
cmp qword [rax], rdi
je 0x14010bb20
add rdi, 0x10
mov rcx, qword [rdi]
mov rax, qword [rcx + 0x10]
lea rdi, [rcx + 0x10]
cmp qword [rax], rcx
jne 0x14010bb10
mov rdi, rax
cmp rax, rbx
jne 0x14010bacc
lea rdx, [rsi + 0x50]
lea rcx, [rsp + 0xc8]
mov r8, qword [rsp + 0x70]
call fcn.14010c120
movaps xmmword [rsp + 0x100], xmm6
mov qword [rsp + 0x110], 0
lea rcx, str.ptype
call fcn.1401a0a10
cmp rax, 0xfffffffffffffff0
jae 0x14010c112
mov rdi, rax
cmp rax, 0x17
jae 0x14010bb88
mov byte [rsp + 0x117], dil
lea rbx, [rsp + 0x100]
test rdi, rdi
jne 0x14010bbbb
jmp 0x14010bbcd
mov rbp, rdi
add rbp, 0x10
and rbp, 0xfffffffffffffff0
mov rcx, rbp
call fcn.140180340
mov rbx, rax
mov qword [rsp + 0x100], rax
bts rbp, 0x3f
mov qword [rsp + 0x110], rbp
mov qword [rsp + 0x108], rdi
mov rcx, rbx
lea rdx, str.ptype
mov r8, rdi
call fcn.1401836f0
mov byte [rbx + rdi], 0
mov rcx, qword [rsi + 0x60]
mov rdx, r14
lea r8, [rsp + 0x100]
xor r9d, r9d
call fcn.140106710
movdqa xmm7, xmmword [rsp + 0xe0]
mov rdi, qword [rsp + 0xf0]
cmp byte [rsp + 0x117], 0
jns 0x14010bc10
mov rcx, qword [rsp + 0x100]
call fcn.140180390
movq rax, xmm7
test rax, rax
je 0x14010bcaf
mov rcx, qword [rax + 0x18]
cmp dword [rcx + 0x38], 7
jne 0x14010bcaf
mov ecx, dword [rcx + 0x30]
or dword [rsi + 0x10], 4
mov dword [rsi + 0x78], ecx
movdqa xmmword [rsp + 0x100], xmm7
mov qword [rsp + 0x110], rdi
cmp qword [rsi + 0x50], 0
jne 0x14010bc76
mov rdi, qword [rax + 0x18]
test rdi, rdi
je 0x14010bc76
lea rcx, [rdi + 0x18]
call fcn.1400fdbd0
cmp byte [rdi + 0x17], 0
jns 0x14010bc6e
mov rcx, qword [rdi]
call fcn.140180390
mov rcx, rdi
call fcn.140180390
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0xf0], rax
movaps xmm0, xmmword [rsp + 0x100]
movaps xmmword [rsp + 0xe0], xmm0
lea rcx, [rsp + 0x100]
call fcn.140106560
mov rcx, qword [rsi + 0x60]
mov rdx, r14
call fcn.1401063b0
mov rcx, qword [rsp + 0x80]
lea rdx, [rsp + 0xb0]
mov r8, qword [rsp + 0x78]
call fcn.14010ab60
mov rdi, qword [rsp + 0xb0]
mov r15, qword [rsp + 0xb8]
cmp rdi, r15
je 0x14010beed
lea rax, [rsi + 0x18]
mov qword [rsp + 0x98], rax
mov rax, qword [rsi + 0x28]
test rax, rax
je 0x14010bd0e
movsxd rcx, dword [rsi + 0x20]
mov edx, dword [rax]
cmp ecx, edx
jge 0x14010bd13
lea edx, [rcx + 1]
mov dword [rsi + 0x20], edx
mov rbx, qword [rax + rcx*8 + 8]
jmp 0x14010bd50
mov edx, dword [rsi + 0x24]
jmp 0x14010bd18
cmp edx, dword [rsi + 0x24]
jne 0x14010bd2d
inc edx
mov rcx, qword [rsp + 0x98]
call fcn.14010ccb0
mov rax, qword [rsi + 0x28]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [rsi + 0x18]
call fcn.1401048a0
mov rbx, rax
mov rax, qword [rsi + 0x28]
movsxd rcx, dword [rsi + 0x20]
lea edx, [rcx + 1]
mov dword [rsi + 0x20], edx
mov qword [rax + rcx*8 + 8], rbx
mov rax, qword [rdi + 8]
mov ecx, dword [rbx + 0x10]
mov edx, ecx
or edx, 0x20
mov dword [rbx + 0x10], edx
mov qword [rbx + 0x40], rax
mov rax, qword [rdi + 0x18]
mov qword [rbx + 0x48], rax
lea rdx, [rdi + 0x38]
or ecx, 0x61
mov dword [rbx + 0x10], ecx
mov rcx, qword [rbx + 0x18]
cmp rcx, r12
je 0x14010bd85
call fcn.140036da0
jmp 0x14010bd8e
lea rcx, [rbx + 0x18]
call fcn.1401061a0
mov r9, qword [rdi + 0x18]
mov r8d, dword [rdi + 0x20]
mov rcx, r14
lea rdx, str._08X_zx
call fcn.14005f040
or byte [rbx + 0x10], 2
mov rcx, qword [rbx + 0x20]
cmp rcx, r12
je 0x14010bdbc
mov rdx, r14
call fcn.140036da0
jmp 0x14010bdc8
lea rcx, [rbx + 0x20]
mov rdx, r14
call fcn.1401061a0
or byte [rbx + 0x10], 4
lea rdx, [rdi + 0x50]
mov rcx, qword [rbx + 0x28]
cmp rcx, r12
je 0x14010bde0
call fcn.140036da0
jmp 0x14010bde9
lea rcx, [rbx + 0x28]
call fcn.1401061a0
movzx eax, byte [rdi + 0x37]
movzx ecx, byte [rdi + 0x36]
movzx edx, byte [rdi + 0x35]
movzx ebp, byte [rdi + 0x34]
movzx esi, byte [rdi + 0x33]
movzx r10d, byte [rdi + 0x32]
movzx r11d, byte [rdi + 0x31]
movzx r12d, byte [rdi + 0x30]
movzx r13d, word [rdi + 0x2e]
movzx r9d, word [rdi + 0x2c]
mov r14d, dword [rdi + 0x24]
mov r8d, dword [rdi + 0x28]
mov dword [rsp + 0x68], r14d
mov dword [rsp + 0x60], eax
mov dword [rsp + 0x58], ecx
mov dword [rsp + 0x50], edx
mov dword [rsp + 0x48], ebp
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x38], r10d
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], r13d
lea rsi, [rsp + 0x100]
mov rcx, rsi
lea rdx, str._08X_04X_04X_02X_02X_02X_02X_02X_02X_02X_02X_x
call fcn.14005f040
or byte [rbx + 0x10], 8
mov rcx, qword [rbx + 0x30]
lea r12, [0x140218400]
cmp rcx, r12
je 0x14010be80
mov rdx, rsi
call fcn.140036da0
jmp 0x14010be8c
lea rcx, [rbx + 0x30]
mov rdx, rsi
call fcn.1401061a0
mov rsi, qword [rsp + 0x90]
mov al, byte [rdi]
or dword [rbx + 0x10], 0x100
xor al, 1
mov byte [rbx + 0x58], al
cmp byte [rsp + 0x117], 0
lea r14, [rsp + 0xe0]
jns 0x14010bec1
mov rcx, qword [rsp + 0x100]
call fcn.140180390
cmp byte [rsp + 0xf7], 0
jns 0x14010bed8
mov rcx, qword [rsp + 0xe0]
call fcn.140180390
add rdi, 0x68
cmp r15, rdi
jne 0x14010bcee
mov rdi, qword [rsp + 0xb0]
test rdi, rdi
je 0x14010bf28
mov rsi, qword [rsp + 0xb8]
mov rcx, rdi
cmp rsi, rdi
je 0x14010bf1b
add rsi, 0xffffffffffffff98
mov rcx, rsi
call fcn.1400a4cc0
cmp rdi, rsi
jne 0x14010bf02
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0xb8], rdi
call fcn.140180390
mov rdx, qword [rsp + 0xd0]
lea rcx, [rsp + 0xc8]
call fcn.1400a6140
mov rsi, qword [rsp + 0x88]
mov rcx, qword [rsi]
call fcn.14010a7e0
mov qword [rsp + 0x78], rax
test rax, rax
movabs rdi, 0xaaaaaaaaaaaaaaab
jne 0x14010b62e
mov rcx, qword [rsi]
lea rdi, [rsp + 0xe0]
mov rdx, rdi
call fcn.14010a9c0
mov rsi, qword [rdi]
mov r15, qword [rdi + 8]
cmp rsi, r15
je 0x14010c061
mov rbp, qword [rsp + 0x70]
lea rdi, [rbp + 0x30]
xorps xmm6, xmm6
lea r14, [fcn.140098830]
mov rbx, qword [rsp + 0x70]
mov rax, qword [rbp + 0x40]
test rax, rax
je 0x14010bfc0
movsxd rcx, dword [rbp + 0x38]
mov edx, dword [rax]
cmp ecx, edx
jge 0x14010bfc5
lea edx, [rcx + 1]
mov dword [rbp + 0x38], edx
mov rcx, qword [rax + rcx*8 + 8]
jmp 0x14010c03f
mov edx, dword [rbp + 0x3c]
jmp 0x14010bfca
cmp edx, dword [rbp + 0x3c]
jne 0x14010bfdf
inc edx
mov rcx, rdi
call fcn.14010ccb0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x40]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rbp, qword [rdi]
test rbp, rbp
je 0x14010c014
cmp qword [rbp + 0x70], 0
je 0x14010c002
mov r8d, 0x18
mov rcx, rbp
xor edx, edx
call fcn.14012f2a0
mov edx, 0x18
mov rcx, rbp
mov r8, r14
call fcn.14012ee10
jmp 0x14010c01e
mov ecx, 0x18
call fcn.140180340
mov rcx, rax
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov rax, qword [rbx + 0x40]
movsxd rdx, dword [rbx + 0x38]
lea ebp, [rdx + 1]
mov dword [rbx + 0x38], ebp
mov qword [rax + rdx*8 + 8], rcx
mov rdx, rsi
call fcn.140036da0
add rsi, 0x18
cmp r15, rsi
mov rbp, qword [rsp + 0x70]
jne 0x14010bfa0
mov rsi, qword [rsp + 0xe0]
test rsi, rsi
mov rax, qword [rsp + 0x88]
je 0x14010c0ba
mov rax, qword [rsp + 0xe8]
cmp rax, rsi
jne 0x14010c08b
mov rcx, rsi
jmp 0x14010c0a5
mov rcx, qword [rax - 0x18]
call fcn.140180390
jmp 0x14010c095
lea rdi, [rax - 0x18]
cmp byte [rax - 1], 0
js 0x14010c080
mov rax, rdi
cmp rsi, rdi
jne 0x14010c08b
mov rcx, qword [rsp + 0xe0]
mov qword [rsp + 0xe8], rsi
call fcn.140180390
mov rax, qword [rsp + 0x88]
mov rsi, qword [rax]
mov qword [rax], 0
test rsi, rsi
je 0x14010c0d9
mov rcx, rsi
call fcn.140109c30
mov rcx, rsi
call fcn.140180390
mov rcx, qword [rsp + 0x118]
xor rcx, rsp
call fcn.140180700
mov eax, 1
movaps xmm6, xmmword [rsp + 0x120]
movaps xmm7, xmmword [rsp + 0x130]
add rsp, 0x148
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsp + 0x100]
call fcn.140036bc0
int3