Function at 0x1400b3f54
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, 0x158
movaps xmmword [rsp + 0x140], xmm8
movaps xmmword [rsp + 0x130], xmm7
movdqa xmmword [rsp + 0x120], xmm6
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x1401ac698]
xor rax, rsp
mov qword [rsp + 0x118], rax
mov rcx, qword [rcx]
call fcn.1400b67d0
or byte [rdi + 0x10], 8
mov qword [rsp + 0x70], rdi
mov byte [rdi + 0x98], al
mov rcx, qword [rsi]
call fcn.1400b5730
mov qword [rsp + 0x78], rax
test rax, rax
mov qword [rsp + 0x98], rsi
je 0x1400b4893
mov rax, qword [rsp + 0x70]
add rax, 0x18
mov qword [rsp + 0xa0], rax
xorps xmm8, xmm8
lea rdi, [rsp + 0xe0]
lea r12, [0x1401af658]
movaps xmm7, xmmword [section..rdata]
mov rax, qword [rsi]
mov qword [rsp + 0x80], rax
mov rbp, qword [rsp + 0x70]
mov rax, qword [rbp + 0x28]
test rax, rax
je 0x1400b4033
movsxd rcx, dword [rbp + 0x20]
mov edx, dword [rax]
cmp ecx, edx
movabs rsi, 0xaaaaaaaaaaaaaaab
jge 0x1400b4042
lea edx, [rcx + 1]
mov dword [rbp + 0x20], edx
mov r13, qword [rax + rcx*8 + 8]
jmp 0x1400b4084
mov edx, dword [rbp + 0x24]
movabs rsi, 0xaaaaaaaaaaaaaaab
jmp 0x1400b4047
cmp edx, dword [rbp + 0x24]
jne 0x1400b4061
inc edx
mov rcx, qword [rsp + 0xa0]
call fcn.140053dc0
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.1400afb1c
mov r13, 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], r13
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x78]
call fcn.1400b6210
test rax, rax
mov qword [rsp + 0x88], r13
je 0x1400b447d
mov rbp, rax
lea rax, [r13 + 0x30]
mov qword [rsp + 0xa8], rax
mov eax, dword [r13 + 0x10]
test al, 2
jne 0x1400b40cd
mov rcx, qword [rbp + 0x20]
or eax, 2
mov dword [r13 + 0x10], eax
mov qword [r13 + 0x70], rcx
mov rax, qword [r13 + 0x40]
test rax, rax
je 0x1400b40ee
movsxd rcx, dword [r13 + 0x38]
mov edx, dword [rax]
cmp ecx, edx
jge 0x1400b40f4
lea edx, [rcx + 1]
mov dword [r13 + 0x38], edx
mov r15, qword [rax + rcx*8 + 8]
jmp 0x1400b4133
mov edx, dword [r13 + 0x3c]
jmp 0x1400b40fa
cmp edx, dword [r13 + 0x3c]
jne 0x1400b410f
inc edx
mov rcx, qword [rsp + 0xa8]
call fcn.140053dc0
mov rax, qword [r13 + 0x40]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [r13 + 0x30]
call fcn.1400af9a2
mov r15, rax
mov rax, qword [r13 + 0x40]
movsxd rcx, dword [r13 + 0x38]
lea edx, [rcx + 1]
mov dword [r13 + 0x38], edx
mov qword [rax + rcx*8 + 8], r15
or byte [r15 + 0x10], 1
mov rcx, qword [r15 + 0x30]
cmp rcx, r12
je 0x1400b414b
mov rdx, rbp
call fcn.140021780
jmp 0x1400b4157
lea rcx, [r15 + 0x30]
mov rdx, rbp
call fcn.140006860
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 0x1400b41e2
or eax, 0xe
mov dword [r15 + 0x10], eax
mov rax, qword [r15 + 0x38]
test rax, rax
jne 0x1400b41a0
xor ecx, ecx
call fcn.1400af962
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 0x1400b444d
lea rax, [r15 + 0x18]
mov qword [rsp + 0x90], rax
mov r13d, 0x7c
xor r12d, r12d
xor r14d, r14d
mov rax, qword [r15 + 0x28]
test rax, rax
je 0x1400b4229
movsxd rcx, dword [r15 + 0x20]
mov edx, dword [rax]
cmp ecx, edx
jge 0x1400b422f
lea edx, [rcx + 1]
mov dword [r15 + 0x20], edx
mov rax, qword [rax + rcx*8 + 8]
jmp 0x1400b426b
mov edx, dword [r15 + 0x24]
jmp 0x1400b4235
cmp edx, dword [r15 + 0x24]
jne 0x1400b424a
inc edx
mov rcx, qword [rsp + 0x90]
call fcn.140053dc0
mov rax, qword [r15 + 0x28]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [r15 + 0x18]
call fcn.1400af934
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 + r13 - 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 + r13 - 0x74]
mov ebp, edx
or ebp, 0x201
mov dword [rax + 0x10], ebp
mov qword [rax + 0x78], rcx
mov rcx, qword [r8 + r13 - 0x6c]
mov edi, edx
or edi, 0x203
mov dword [rax + 0x10], edi
mov qword [rax + 0x40], rcx
mov bl, byte [r8 + r13 - 0xc]
cmp bl, 0x2f
jg 0x1400b42ff
cmp bl, 0xf0
je 0x1400b4346
cmp bl, 0x10
mov rbp, r9
je 0x1400b43b3
cmp bl, 0x20
jne 0x1400b43fd
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 2
mov rcx, qword [r8 + r13 - 4]
or edx, 0x22b
mov dword [rax + 0x10], edx
mov qword [rax + 0x50], rcx
jmp 0x1400b43fd
cmp bl, 0x30
je 0x1400b438a
cmp bl, 0x41
mov rbp, r9
je 0x1400b43d9
cmp bl, 0x51
jne 0x1400b43fd
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 5
mov rcx, qword [r8 + r13 - 4]
or edx, 0x323
mov dword [rax + 0x10], edx
mov qword [rax + 0x70], rcx
jmp 0x1400b43fd
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 6
mov ecx, dword [r8 + r13 - 4]
mov esi, edx
or esi, 0x263
mov dword [rax + 0x10], esi
movabs rsi, 0xaaaaaaaaaaaaaaab
mov dword [rax + 0x64], ecx
mov ecx, dword [r8 + r13]
or edx, 0x663
mov dword [rax + 0x10], edx
mov dword [rax + 0x80], ecx
jmp 0x1400b43ae
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 3
mov rcx, qword [r8 + r13 - 4]
or edx, 0x233
mov dword [rax + 0x10], edx
mov qword [rax + 0x58], rcx
mov rbp, r9
jmp 0x1400b43fd
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 1
mov rcx, qword [r8 + r13 - 4]
or edx, 0x227
mov dword [rax + 0x10], edx
mov qword [rax + 0x48], rcx
jmp 0x1400b43fd
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x60], 4
mov rcx, qword [r8 + r13 - 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, rsi
cmp r14, rdx
jae 0x1400b442d
add rax, 0x20
add rcx, r12
mov rdx, rax
xor r8d, r8d
call fcn.1400b49bc
inc r14
mov rax, qword [rbp + 0x38]
sub rax, qword [rbp + 0x30]
sar rax, 7
sub r13, 0xffffffffffffff80
add r12, 0x18
cmp r14, rax
jb 0x1400b4208
mov rcx, qword [rsp + 0x80]
call fcn.1400b62b0
mov rbp, rax
test rax, rax
lea rdi, [rsp + 0xe0]
lea r12, [0x1401af658]
mov r13, qword [rsp + 0x88]
jne 0x1400b40b6
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x78]
call fcn.1400b6340
lea rcx, [rsp + 0xd0]
movups xmmword [rcx], xmm8
mov qword [rsp + 0xc8], rcx
mov rdx, qword [rax]
lea r8, [rax + 8]
lea rsi, [rsp + 0xc8]
mov rcx, rsi
call fcn.1400b50c4
lea r15, [r13 + 0x50]
mov rcx, rsi
mov rdx, r15
mov r8, qword [rsp + 0x70]
call fcn.1400b49bc
movaps xmmword [rsp + 0x100], xmm8
mov qword [rsp + 0x110], 0
lea rcx, str.ptype
call fcn.14014ae60
cmp rax, 0xfffffffffffffff0
jae 0x1400b49ac
mov rbp, rax
cmp rax, 0x17
jae 0x1400b451c
lea eax, [rbp + rbp]
mov byte [rsp + 0x100], al
lea rsi, [rsp + 0x101]
test rbp, rbp
jne 0x1400b454e
jmp 0x1400b4560
mov rbx, rbp
add rbx, 0x10
and rbx, 0xfffffffffffffff0
mov rcx, rbx
call fcn.14012c988
mov rsi, rax
mov qword [rsp + 0x110], rax
or rbx, 1
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0x108], rbp
mov rcx, rsi
lea rdx, str.ptype
mov r8, rbp
call fcn.14012f890
mov byte [rsi + rbp], 0
mov rcx, qword [r13 + 0x60]
mov rdx, rdi
lea rbx, [rsp + 0x100]
mov r8, rbx
xor r9d, r9d
call fcn.1400b0bf0
movdqa xmm6, xmmword [rsp + 0xe0]
mov rsi, qword [rsp + 0xf0]
test byte [rsp + 0x100], 1
je 0x1400b45a6
mov rcx, qword [rsp + 0x110]
call fcn.14012c9c4
movq rax, xmm6
test rax, rax
je 0x1400b45e5
mov rax, qword [rax + 0x18]
cmp dword [rax + 0x38], 7
jne 0x1400b45e5
mov eax, dword [rax + 0x30]
or dword [r13 + 0x10], 4
mov dword [r13 + 0x78], eax
movdqa xmmword [rsp + 0xe0], xmm6
mov qword [rsp + 0xf0], rsi
mov rcx, r15
mov rdx, rbx
mov r8, rdi
call fcn.1400b0870
mov rcx, qword [rsp + 0x80]
lea rdx, [rsp + 0xb0]
mov r8, qword [rsp + 0x78]
call fcn.1400b65c0
mov rsi, qword [rsp + 0xb0]
mov r14, qword [rsp + 0xb8]
cmp rsi, r14
je 0x1400b4853
lea rax, [r13 + 0x18]
mov qword [rsp + 0x90], rax
mov rax, qword [r13 + 0x28]
test rax, rax
je 0x1400b4645
movsxd rcx, dword [r13 + 0x20]
mov edx, dword [rax]
cmp ecx, edx
jge 0x1400b464b
lea edx, [rcx + 1]
mov dword [r13 + 0x20], edx
mov rbx, qword [rax + rcx*8 + 8]
jmp 0x1400b468a
mov edx, dword [r13 + 0x24]
jmp 0x1400b4651
cmp edx, dword [r13 + 0x24]
jne 0x1400b4666
inc edx
mov rcx, qword [rsp + 0x90]
call fcn.140053dc0
mov rax, qword [r13 + 0x28]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [r13 + 0x18]
call fcn.1400af820
mov rbx, rax
mov rax, qword [r13 + 0x28]
movsxd rcx, dword [r13 + 0x20]
lea edx, [rcx + 1]
mov dword [r13 + 0x20], edx
mov qword [rax + rcx*8 + 8], rbx
mov rax, qword [rsi + 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 [rsi + 0x18]
mov qword [rbx + 0x48], rax
lea rdx, [rsi + 0x38]
or ecx, 0x61
mov dword [rbx + 0x10], ecx
mov rcx, qword [rbx + 0x18]
cmp rcx, r12
je 0x1400b46bf
call fcn.140021780
jmp 0x1400b46c8
lea rcx, [rbx + 0x18]
call fcn.140006860
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xf0], rax
movaps xmmword [rsp + 0xe0], xmm7
mov r9, qword [rsi + 0x18]
mov r8d, dword [rsi + 0x20]
mov rcx, rdi
lea rdx, str._08X_zx
call fcn.140038b10
or byte [rbx + 0x10], 2
mov rcx, qword [rbx + 0x20]
cmp rcx, r12
je 0x1400b4710
mov rdx, rdi
call fcn.140021780
jmp 0x1400b471c
lea rcx, [rbx + 0x20]
mov rdx, rdi
call fcn.140006860
or byte [rbx + 0x10], 4
lea rdx, [rsi + 0x50]
mov rcx, qword [rbx + 0x28]
cmp rcx, r12
je 0x1400b4734
call fcn.140021780
jmp 0x1400b473d
lea rcx, [rbx + 0x28]
call fcn.140006860
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x110], rax
movaps xmmword [rsp + 0x100], xmm7
movzx eax, byte [rsi + 0x37]
movzx ecx, byte [rsi + 0x36]
movzx edx, byte [rsi + 0x35]
movzx ebp, byte [rsi + 0x34]
movzx edi, byte [rsi + 0x33]
movzx r10d, byte [rsi + 0x32]
movzx r11d, byte [rsi + 0x31]
movzx r12d, byte [rsi + 0x30]
movzx r13d, word [rsi + 0x2e]
movzx r9d, word [rsi + 0x2c]
mov r15d, dword [rsi + 0x24]
mov r8d, dword [rsi + 0x28]
mov dword [rsp + 0x68], r15d
mov dword [rsp + 0x60], eax
mov dword [rsp + 0x58], ecx
mov dword [rsp + 0x50], edx
mov dword [rsp + 0x48], ebp
mov dword [rsp + 0x40], edi
mov dword [rsp + 0x38], r10d
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], r13d
lea rdi, [rsp + 0x100]
mov rcx, rdi
lea rdx, str._08X_04X_04X_02X_02X_02X_02X_02X_02X_02X_02X_x
call fcn.140038b10
or byte [rbx + 0x10], 8
mov rcx, qword [rbx + 0x30]
lea r12, [0x1401af658]
cmp rcx, r12
je 0x1400b47ee
mov rdx, rdi
call fcn.140021780
jmp 0x1400b47fa
lea rcx, [rbx + 0x30]
mov rdx, rdi
call fcn.140006860
mov r13, qword [rsp + 0x88]
mov al, byte [rsi]
or dword [rbx + 0x10], 0x100
xor al, 1
mov byte [rbx + 0x58], al
test byte [rsp + 0x100], 1
lea rdi, [rsp + 0xe0]
je 0x1400b482f
mov rcx, qword [rsp + 0x110]
call fcn.14012c9c4
test byte [rsp + 0xe0], 1
je 0x1400b4846
mov rcx, qword [rsp + 0xf0]
call fcn.14012c9c4
add rsi, 0x68
cmp r14, rsi
jne 0x1400b4624
lea rcx, [rsp + 0xb0]
call fcn.1400b5286
mov rdx, qword [rsp + 0xd0]
lea rcx, [rsp + 0xc8]
call fcn.140059c20
mov rsi, qword [rsp + 0x98]
mov rcx, qword [rsi]
call fcn.1400b61f0
mov qword [rsp + 0x78], rax
test rax, rax
jne 0x1400b3ff9
lea rdi, [rsp + 0xe0]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rdi + 0x10], rax
movaps xmm0, xmmword [section..rdata]
movaps xmmword [rdi], xmm0
mov rcx, qword [rsi]
mov rdx, rdi
call fcn.1400b6400
mov rsi, qword [rdi]
mov rbx, qword [rdi + 8]
cmp rsi, rbx
mov rbp, qword [rsp + 0x70]
je 0x1400b494e
lea r14, [rbp + 0x30]
mov rax, qword [rbp + 0x40]
test rax, rax
je 0x1400b48f3
movsxd rcx, dword [rbp + 0x38]
mov edx, dword [rax]
cmp ecx, edx
jge 0x1400b48f8
lea edx, [rcx + 1]
mov dword [rbp + 0x38], edx
mov rcx, qword [rax + rcx*8 + 8]
jmp 0x1400b4938
mov edx, dword [rbp + 0x3c]
jmp 0x1400b48fd
cmp edx, dword [rbp + 0x3c]
jne 0x1400b4912
inc edx
mov rcx, r14
call fcn.140053dc0
mov rbp, qword [rsp + 0x70]
mov rax, qword [rbp + 0x40]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [rbp + 0x30]
mov rdi, rbp
call fcn.1400540ae
mov rcx, rax
mov rax, qword [rbp + 0x40]
movsxd rdx, dword [rbp + 0x38]
lea ebp, [rdx + 1]
mov dword [rdi + 0x38], ebp
mov qword [rax + rdx*8 + 8], rcx
mov rdx, rsi
call fcn.140021780
add rsi, 0x18
cmp rbx, rsi
mov rbp, qword [rsp + 0x70]
jne 0x1400b48d3
lea rcx, [rsp + 0xe0]
call fcn.140001dbc
mov rcx, qword [rsp + 0x98]
xor edx, edx
call fcn.1400b52d2
mov rcx, qword [rsp + 0x118]
xor rcx, rsp
call fcn.14012cde0
mov eax, 1
movaps xmm6, xmmword [rsp + 0x120]
movaps xmm7, xmmword [rsp + 0x130]
movaps xmm8, xmmword [rsp + 0x140]
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsp + 0x100]
call fcn.1400215c4
int3