Function at 0x14006a400
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x40]
sub rsp, 0x140
mov rax, qword [0x1400e5040]
xor rax, rsp
mov qword [rbp + 0x30], rax
mov r14, qword [rcx + 0x10]
xor r15d, r15d
mov r10, qword [rcx]
mov ebx, r8d
mov dword [rsp + 0x44], r8d
mov r12d, r8d
mov qword [rbp - 0x78], rdx
mov rdi, rdx
mov qword [rbp - 0x80], r14
mov rsi, rcx
mov dword [rsp + 0x40], ebx
mov dword [rsp + 0x48], r15d
mov dword [rsp + 0x50], r15d
mov qword [rsp + 0x58], r10
test r14, r14
jne 0x14006a467
xor eax, eax
jmp 0x14006b45d
mov qword [rsp + 0x198], r13
test rdi, rdi
je case.0x14006a4a6.101
movzx r13d, byte [rdx]
lea eax, [r13 - 0x13]
cmp eax, 0x8c
ja case.0x14006a4a6.21
lea rdx, [0x140000000]
cdqe
movzx eax, byte [rdx + rax + 0x6b4e0]
mov ecx, dword [rdx + rax*4 + 0x6b47c]
add rcx, rdx
jmp rcx
mov r8, qword [rdi + 0x38]
movsx r9, word [rdi + 0x32]
shl r9, 5
add r9, qword [r8 + 0x20]
cmp byte [r8], r15b
jne 0x14006a4c7
mov ebx, dword [r9 + 0x14]
jmp 0x14006b3d5
cmp byte [r8 + 1], r15b
je case.0x14006a4a6.154
mov r9d, dword [r9 + 0x10]
mov edx, 0x2f
mov r8d, dword [r8 + 8]
mov rcx, r14
mov dword [rsp + 0x20], r12d
call fcn.14004fb30
jmp 0x14006b3d5
mov r9d, dword [rdi + 0x2c]
test r9d, r9d
jns 0x14006a50b
mov eax, dword [rsi + 0x68]
test eax, eax
jle 0x14006a507
movsx ebx, word [rdi + 0x30]
add ebx, eax
jmp 0x14006b3d5
mov r9d, dword [rsi + 0x6c]
movzx eax, byte [rdi + 0x36]
mov rcx, rsi
movsx r8d, word [rdi + 0x30]
mov rdx, qword [rdi + 0x40]
mov byte [rsp + 0x28], al
mov dword [rsp + 0x20], r12d
call fcn.14006a070
mov ebx, eax
jmp 0x14006b3d5
mov r9d, r12d
xor r8d, r8d
mov rdx, rdi
mov rcx, rsi
call fcn.1400696e0
jmp 0x14006b3d5
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x14006b3d5
mov r8, rcx
cmp byte [rcx], r15b
je 0x14006a568
nop dword [rax + rax]
inc r8
cmp byte [r8], r15b
jne 0x14006a560
sub r8d, ecx
lea rdx, [rsp + 0x58]
and r8d, 0x3fffffff
mov r9b, 1
call fcn.140030440
lea rdx, [rsp + 0x58]
mov rcx, r14
call fcn.140069560
mov r9d, r12d
mov dword [rsp + 0x20], r15d
xor r8d, r8d
mov edx, 0x85
mov rcx, r14
mov rbx, rax
call fcn.14004fb30
mov r9d, 0xfffffff4
mov r8, rbx
mov edx, eax
mov rcx, r14
call fcn.140050160
mov ebx, r12d
jmp 0x14006b3d5
mov rbx, qword [rdi + 8]
xor r8d, r8d
mov r9d, r12d
mov dword [rsp + 0x20], r15d
mov rcx, r14
lea edx, [r8 + 0x61]
call fcn.14004fb30
xor r9d, r9d
jmp 0x14006a5ad
mov rdx, qword [rdi + 8]
add rdx, 2
mov rbx, rdx
jne 0x14006a5f4
mov ebx, r15d
jmp 0x14006a610
cmp byte [rdx], r15b
je 0x14006a608
nop dword [rax]
inc rbx
cmp byte [rbx], r15b
jne 0x14006a600
sub ebx, edx
and ebx, 0x3fffffff
mov rcx, qword [r14]
lea r8d, [rbx - 1]
call fcn.140031120
mov rdi, rax
mov dword [rsp + 0x20], r15d
lea eax, [rbx - 1]
mov r9d, r12d
cdq
mov rcx, r14
sub eax, edx
mov edx, 0x1e
sar eax, 1
mov r8d, eax
call fcn.14004fb30
mov r9d, 0xffffffff
mov r8, rdi
mov edx, eax
mov rcx, r14
call fcn.140050160
mov ebx, r12d
jmp 0x14006b3d5
movsx r8d, word [rdi + 0x30]
mov r9d, r12d
mov edx, 0x1f
mov dword [rsp + 0x20], r15d
mov rcx, r14
call fcn.14004fb30
mov rax, qword [rdi + 8]
cmp byte [rax + 1], r15b
je 0x14006b3d5
movsx rax, word [rdi + 0x30]
mov r9d, 0xfffffffe
mov r8, qword [rsi + 0x208]
mov rcx, r14
lea edx, [r9 + 1]
mov r8, qword [r8 + rax*8 - 8]
call fcn.140050160
jmp 0x14006b3d5
mov ebx, dword [rdi + 0x2c]
jmp 0x14006b3d5
mov rdx, qword [rdi + 0x10]
mov rcx, rsi
call fcn.14006a400
mov ebx, eax
jmp 0x14006b3d5
mov rdx, qword [rdi + 0x10]
mov rcx, rsi
call fcn.14006a400
mov ebx, eax
cmp eax, r12d
je 0x14006a6f3
mov r9d, r12d
mov dword [rsp + 0x20], r15d
mov r8d, eax
mov edx, 0x22
mov rcx, r14
call fcn.14004fb30
mov ebx, r12d
mov rcx, qword [rdi + 8]
xor edx, edx
call fcn.1400748f0
movsx r9d, al
mov r8d, r12d
mov edx, 0x28
mov dword [rsp + 0x20], r15d
mov rcx, r14
call fcn.14004fb30
mov r8d, 1
mov edx, ebx
mov rcx, rsi
call fcn.140069af0
jmp 0x14006b3d5
mov rdx, qword [rdi + 0x10]
lea r8, [rsp + 0x48]
mov rcx, rsi
call fcn.14006b600
mov rdx, qword [rdi + 0x18]
lea r8, [rsp + 0x50]
mov rcx, rsi
mov ebx, eax
call fcn.14006b600
mov r9d, r13d
mov dword [rsp + 0x38], 0x20
mov r8, qword [rdi + 0x18]
mov rcx, rsi
mov rdx, qword [rdi + 0x10]
mov dword [rsp + 0x30], r12d
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ebx
call fcn.140064ea0
mov ebx, r12d
jmp 0x14006b3d5
mov rdx, qword [rdi + 0x10]
lea r8, [rsp + 0x48]
mov rcx, rsi
call fcn.14006b600
mov rdx, qword [rdi + 0x18]
lea r8, [rsp + 0x50]
mov rcx, rsi
mov ebx, eax
call fcn.14006b600
cmp r13d, 0x49
mov dword [rsp + 0x38], 0xa0
mov r9d, r15d
sete r9b
add r9d, 0x4e
jmp 0x14006a75b
mov rdx, qword [rdi + 0x10]
lea r8, [rsp + 0x48]
mov rcx, rsi
call fcn.14006b600
mov rdx, qword [rdi + 0x18]
lea r8, [rsp + 0x50]
mov rcx, rsi
mov ebx, eax
call fcn.14006b600
mov r9d, ebx
mov dword [rsp + 0x20], r12d
mov r8d, eax
mov edx, r13d
mov rcx, r14
call fcn.14004fb30
mov ebx, r12d
jmp 0x14006b3d5
mov rcx, qword [rdi + 0x10]
movzx eax, byte [rcx]
cmp al, 0x84
jne 0x14006a826
mov rdx, rcx
mov r9d, r12d
mov rcx, rsi
mov r8d, 1
call fcn.1400696e0
mov ebx, r12d
jmp 0x14006b3d5
cmp al, 0x85
jne 0x14006a87c
mov rcx, qword [rcx + 8]
test rcx, rcx
je 0x14006a5ba
mov r8, rcx
cmp byte [rcx], r15b
je 0x14006a848
nop
inc r8
cmp byte [r8], r15b
jne 0x14006a840
sub r8d, ecx
lea rdx, [rsp + 0x60]
and r8d, 0x3fffffff
mov r9b, 1
call fcn.140030440
movsd xmm2, qword [rsp + 0x60]
lea rdx, [rsp + 0x60]
xorps xmm2, xmmword [0x1400d30d0]
movsd qword [rsp + 0x60], xmm2
jmp 0x14006a584
lea r8, [rsp + 0x48]
mov byte [rbp - 0x20], 0x84
lea rdx, [rbp - 0x20]
mov qword [rbp - 0x1c], 0x4400
mov rcx, rsi
call fcn.14006b600
mov rdx, qword [rdi + 0x10]
lea r8, [rsp + 0x50]
mov rcx, rsi
mov ebx, eax
call fcn.14006b600
mov r9d, ebx
mov dword [rsp + 0x20], r12d
mov r8d, eax
mov edx, 0x5a
mov rcx, r14
call fcn.14004fb30
mov ebx, r12d
jmp 0x14006b3d5
mov rdx, qword [rdi + 0x10]
lea r8, [rsp + 0x48]
mov rcx, rsi
call fcn.14006b600
mov r9d, r12d
mov dword [rsp + 0x20], r15d
mov r8d, eax
mov edx, r13d
mov rcx, r14
call fcn.14004fb30
jmp 0x14006b3d5
mov edx, 0x19
mov dword [rsp + 0x20], r15d
mov r9d, r12d
mov rcx, r14
lea r8d, [rdx - 0x18]
call fcn.14004fb30
mov rdx, qword [rdi + 0x10]
lea r8, [rsp + 0x48]
mov rcx, rsi
call fcn.14006b600
xor r9d, r9d
mov dword [rsp + 0x20], r15d
mov r8d, eax
mov edx, r13d
mov rcx, r14
call fcn.14004fb30
xor r8d, r8d
mov edi, eax
mov r9d, r12d
mov dword [rsp + 0x20], r15d
mov rcx, r14
lea edx, [r8 + 0x19]
call fcn.14004fb30
mov edx, dword [r14 + 0x3c]
cmp edx, edi
jbe 0x14006a965
mov rax, qword [r14 + 8]
lea rcx, [rdi + rdi*2]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [r14 + 0x3c]
mov rax, qword [r14 + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
jmp 0x14006b3d5
mov rdx, qword [rdi + 0x38]
test rdx, rdx
jne 0x14006a998
mov r8, qword [rdi + 8]
lea rdx, str.misuse_of_aggregate:__s__
mov rcx, rsi
call fcn.140030280
jmp 0x14006b3d5
movsx rax, word [rdi + 0x32]
lea rcx, [rax + rax*2]
mov rax, qword [rdx + 0x30]
mov ebx, dword [rax + rcx*8 + 0x10]
jmp 0x14006b3d5
test dword [rdi + 4], 0x4000
mov rax, qword [r10 + 0x20]
mov dword [rsp + 0x4c], r15d
mov qword [rsp + 0x60], r15
mov rcx, qword [rax + 0x18]
movzx edx, byte [rcx + 0x71]
je 0x14006a9eb
mov qword [rsp + 0x68], r15
mov r13d, r15d
mov rax, qword [rdi + 8]
mov qword [rsp + 0x78], rax
mov rbx, rax
test rax, rax
jne 0x14006a9fe
mov ebx, r15d
jmp 0x14006aa13
mov rax, qword [rdi + 0x20]
mov qword [rsp + 0x68], rax
test rax, rax
je 0x14006a9d2
mov r13d, dword [rax]
jmp 0x14006a9d5
cmp byte [rax], r15b
je 0x14006aa0b
inc rbx
cmp byte [rbx], r15b
jne 0x14006aa03
sub ebx, eax
and ebx, 0x3fffffff
mov byte [rsp + 0x28], r15b
mov r9d, r13d
mov byte [rsp + 0x20], dl
mov r8d, ebx
mov rdx, rax
mov rcx, r10
call fcn.14007d0d0
mov qword [rsp + 0x70], rax
mov rdx, rax
test rax, rax
je 0x14006ad60
cmp qword [rax + 0x18], r15
je 0x14006ad60
movzx eax, word [rax + 2]
bt ax, 9
jae 0x14006ab25
mov rcx, r14
call fcn.14004fc70
mov rbx, qword [rsp + 0x68]
mov r8d, r12d
mov rcx, rsi
mov dword [rsp + 0x44], eax
mov edi, eax
mov rdx, qword [rbx + 8]
mov rdx, qword [rdx]
call fcn.14006b790
cmp r13d, 1
jle 0x14006aaf3
lea ecx, [r13 - 1]
mov edi, 0x28
mov r13d, dword [rsp + 0x44]
mov qword [rsp + 0x58], rcx
nop word [rax + rax]
mov r9d, r13d
mov dword [rsp + 0x20], r15d
mov r8d, r12d
mov edx, 0x4d
mov rcx, r14
call fcn.14004fb30
mov r8d, 1
mov edx, r12d
mov rcx, rsi
call fcn.140069af0
inc dword [rsi + 0x70]
mov r8d, r12d
mov rdx, qword [rbx + 8]
mov rdx, qword [rdx + rdi]
call fcn.14006b790
mov rcx, rsi
call fcn.140069d20
sub qword [rsp + 0x58], 1
lea rdi, [rdi + 0x28]
jne 0x14006aaa0
mov edi, r13d
mov rdx, qword [r14 + 0x30]
not edi
test edi, edi
js 0x14006ab14
mov r8, qword [rdx + 0x80]
test r8, r8
je 0x14006ab14
movsxd rcx, edi
mov eax, dword [r14 + 0x3c]
mov dword [r8 + rcx*4], eax
mov eax, dword [r14 + 0x3c]
mov ebx, r12d
dec eax
mov dword [rdx + 0x64], eax
jmp 0x14006b3d5
bt ax, 0xa
jae 0x14006ab4b
mov rdx, qword [rsp + 0x68]
mov r8d, r12d
mov rcx, rsi
mov rdx, qword [rdx + 8]
mov rdx, qword [rdx]
call fcn.14006b790
mov ebx, r12d
jmp 0x14006b3d5
mov ebx, r15d
test r13d, r13d
jle 0x14006abcc
mov r12, qword [rsp + 0x68]
mov r14, r15
mov r15d, ebx
mov edi, ebx
cmp ebx, 0x20
jae 0x14006ab84
mov rax, qword [r12 + 8]
mov edx, 1
mov rcx, qword [r14 + rax]
call fcn.140067db0
mov rdx, qword [rsp + 0x70]
test eax, eax
je 0x14006ab84
bts edi, ebx
test byte [rdx + 2], 0x20
je 0x14006aba8
test r15, r15
jne 0x14006aba8
mov rdx, qword [r12 + 8]
mov rcx, rsi
mov rdx, qword [rdx + r14]
call fcn.140064b40
mov rdx, qword [rsp + 0x70]
mov r15, rax
inc ebx
add r14, 0x28
cmp ebx, r13d
jl 0x14006ab60
mov r14, qword [rbp - 0x80]
mov r12d, dword [rsp + 0x44]
mov qword [rsp + 0x60], r15
xor r15d, r15d
mov dword [rsp + 0x4c], edi
mov rdi, qword [rbp - 0x78]
mov rcx, qword [rsp + 0x68]
mov ebx, dword [rsp + 0x4c]
test rcx, rcx
je 0x14006ac55
test ebx, ebx
jne 0x14006ac00
mov r9d, dword [rsi + 0x44]
mov r8d, dword [rsi + 0x48]
mov dword [rsp + 0x44], r8d
cmp r13d, r9d
jg 0x14006ac00
lea eax, [r8 + r13]
sub r9d, r13d
mov dword [rsi + 0x48], eax
mov dword [rsi + 0x44], r9d
jmp 0x14006ac12
mov eax, dword [rsi + 0x54]
lea r8d, [rax + 1]
add eax, r13d
mov dword [rsi + 0x54], eax
mov dword [rsp + 0x44], r8d
movzx r9d, word [rdx + 2]
test r9b, 0xc0
je 0x14006ac35
mov rax, qword [rcx + 8]
mov rdx, qword [rax]
movzx eax, byte [rdx]
add al, 0x66
test al, 0xfd
jne 0x14006ac35
and r9b, 0xc0
mov byte [rdx + 0x36], r9b
inc dword [rsi + 0x70]
mov rdx, rcx
mov rcx, rsi
mov r9b, 3
call fcn.14006b7f0
mov rcx, rsi
call fcn.140069d20
mov rcx, qword [rsp + 0x68]
jmp 0x14006ac5a
mov dword [rsp + 0x44], r15d
cmp r13d, 2
jl 0x14006ac85
test byte [rdi + 4], 0x80
je 0x14006ac8a
mov r9, qword [rcx + 8]
mov r9, qword [r9 + 0x28]
mov rdx, qword [rsp + 0x70]
mov r8d, r13d
mov rcx, qword [rsp + 0x58]
call fcn.1400a9d60
mov rdi, rax
jmp 0x14006ac98
test r13d, r13d
jle 0x14006ac93
mov r9, qword [rcx + 8]
mov r9, qword [r9]
jmp 0x14006ac6e
mov rdi, qword [rsp + 0x70]
test byte [rdi + 2], 0x20
je 0x14006ace0
cmp qword [rsp + 0x60], 0
jne 0x14006acb4
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x60], rax
xor r9d, r9d
mov dword [rsp + 0x20], r15d
xor r8d, r8d
mov rcx, r14
lea edx, [r9 + 0x24]
call fcn.14004fb30
mov r8, qword [rsp + 0x60]
mov r9d, 0xfffffffc
mov edx, eax
mov rcx, r14
call fcn.140050160
mov dword [rsp + 0x20], r12d
mov r8d, ebx
mov r12d, dword [rsp + 0x44]
mov edx, 1
mov r9d, r12d
mov rcx, r14
call fcn.14004fb30
mov r9d, 0xfffffffb
mov r8, rdi
mov edx, eax
mov rcx, r14
call fcn.140050160
mov rdx, qword [r14 + 8]
test rdx, rdx
je 0x14006ad26
movsxd rax, dword [r14 + 0x3c]
lea rcx, [rax + rax*2]
mov byte [rdx + rcx*8 - 0x15], r13b
test r13d, r13d
je 0x14006b3d1
test ebx, ebx
jne 0x14006b3d1
mov r8d, r13d
mov edx, r12d
mov rcx, rsi
call fcn.140069af0
mov ebx, dword [rsp + 0x40]
cmp r13d, dword [rsi + 0x44]
jle 0x14006b3d5
mov dword [rsi + 0x44], r13d
mov dword [rsi + 0x48], r12d
jmp 0x14006b3d5
mov r9, qword [rsp + 0x78]
lea rdx, str.unknown_function:__.s__
mov r8d, ebx
mov rcx, rsi
call fcn.140030280
mov ebx, r12d
jmp 0x14006b3d5
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
mov rcx, rsi
call fcn.1400687c0
mov ebx, eax
jmp 0x14006b3d5
mov rcx, r14
call fcn.14004fc70
mov rcx, r14
mov r13d, eax
call fcn.14004fc70
xor r8d, r8d
mov dword [rsp + 0x20], r15d
mov r9d, r12d
mov rcx, r14
mov ebx, eax
lea edx, [r8 + 0x1c]
call fcn.14004fb30
mov r9d, ebx
mov r8d, r13d
mov rdx, rdi
mov rcx, rsi
call fcn.140068f60
mov edx, 0x19
mov dword [rsp + 0x20], r15d
mov r9d, r12d
mov rcx, r14
lea r8d, [rdx - 0x18]
call fcn.14004fb30
mov r8, qword [r14 + 0x30]
not r13d
test r13d, r13d
js 0x14006ae0f
mov rdx, qword [r8 + 0x80]
test rdx, rdx
je 0x14006ae0f
mov eax, dword [r14 + 0x3c]
movsxd rcx, r13d
mov dword [rdx + rcx*4], eax
mov eax, dword [r14 + 0x3c]
xor r9d, r9d
dec eax
mov dword [rsp + 0x20], r15d
mov dword [r8 + 0x64], eax
mov rcx, r14
mov r8d, r12d
lea edx, [r9 + 0x25]
call fcn.14004fb30
mov r8, qword [r14 + 0x30]
not ebx
test ebx, ebx
js 0x14006ae50
mov rdx, qword [r8 + 0x80]
test rdx, rdx
je 0x14006ae50
mov eax, dword [r14 + 0x3c]
movsxd rcx, ebx
mov dword [rdx + rcx*4], eax
mov eax, dword [r14 + 0x3c]
mov ebx, r12d
dec eax
mov dword [r8 + 0x64], eax
jmp 0x14006b3d5
mov rcx, qword [rdi + 0x10]
lea r8, [rsp + 0x48]
mov rax, qword [rdi + 0x20]
mov rdx, rcx
mov qword [rsp + 0x58], rcx
mov rcx, rsi
mov r13, qword [rax + 8]
mov rbx, qword [r13]
mov qword [rsp + 0x78], rbx
call fcn.14006b600
lea r8, [rsp + 0x50]
mov dword [rsp + 0x44], eax
mov rdx, rbx
mov rcx, rsi
call fcn.14006b600
movzx ecx, byte [rsi + 0x1f]
mov edx, eax
lea rax, [rsi + 0x54]
test cl, cl
jne 0x14006aeba
mov ebx, dword [rax]
inc ebx
mov dword [rax], ebx
inc dword [rax]
mov edi, dword [rax]
jmp 0x14006aedc
dec cl
movzx ecx, cl
mov byte [rsi + 0x1f], cl
mov ebx, dword [rsi + rcx*4 + 0x24]
test cl, cl
jne 0x14006aed0
inc dword [rax]
mov edi, dword [rax]
jmp 0x14006aedc
dec cl
movzx eax, cl
mov byte [rsi + 0x1f], al
mov edi, dword [rsi + rax*4 + 0x24]
mov eax, dword [rsp + 0x44]
mov r9d, 0x53
mov r8, qword [rsp + 0x78]
mov rcx, rsi
mov dword [rsp + 0x38], 0x20
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], edx
mov rdx, qword [rsp + 0x58]
mov dword [rsp + 0x20], eax
call fcn.140064ea0
mov edx, dword [rsp + 0x50]
mov r13, qword [r13 + 0x28]
test edx, edx
je 0x14006af4e
movzx r8d, byte [rsi + 0x1f]
cmp r8b, 8
jae 0x14006af4e
mov ecx, r15d
lea rax, [rsi + 0x88]
nop dword [rax]
cmp dword [rax + 0xc], edx
je 0x14006af4a
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x14006af30
mov dword [rsi + r8*4 + 0x24], edx
inc byte [rsi + 0x1f]
jmp 0x14006af4e
mov byte [rax + 6], 1
lea r8, [rsp + 0x50]
mov rdx, r13
mov rcx, rsi
call fcn.14006b600
mov rdx, qword [rsp + 0x58]
mov r9d, 0x51
mov dword [rsp + 0x38], 0x20
mov r8, r13
mov dword [rsp + 0x30], edi
mov rcx, rsi
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x20], eax
call fcn.140064ea0
mov r9d, edi
mov dword [rsp + 0x20], r12d
mov r8d, ebx
mov edx, 0x48
mov rcx, r14
call fcn.14004fb30
test ebx, ebx
je 0x14006afdd
movzx edx, byte [rsi + 0x1f]
cmp dl, 8
jae 0x14006afdd
mov ecx, r15d
lea rax, [rsi + 0x88]
nop dword [rax + rax]
cmp dword [rax + 0xc], ebx
je 0x14006afd9
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x14006afc0
mov dword [rsi + rdx*4 + 0x24], ebx
inc byte [rsi + 0x1f]
jmp 0x14006afdd
mov byte [rax + 6], 1
test edi, edi
je 0x14006a5ba
movzx edx, byte [rsi + 0x1f]
cmp dl, 8
jae 0x14006a5ba
mov ecx, r15d
lea rax, [rsi + 0x88]
nop dword [rax]
cmp dword [rax + 0xc], edi
je 0x14006b01f
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x14006b000
mov dword [rsi + rdx*4 + 0x24], edi
mov ebx, r12d
inc byte [rsi + 0x1f]
jmp 0x14006b3d5
mov byte [rax + 6], 1
mov ebx, r12d
jmp 0x14006b3d5
mov r13, qword [rdi + 0x40]
mov r9d, r12d
movsx r8d, word [rdi + 0x30]
mov edx, 0x84
inc r8d
mov dword [rsp + 0x20], r15d
movsx ecx, word [r13 + 0x42]
inc ecx
imul ecx, dword [rdi + 0x2c]
add r8d, ecx
mov rcx, r14
call fcn.14004fb30
movsx rax, word [rdi + 0x30]
test ax, ax
js 0x14006b3d5
lea rcx, [rax + rax*2]
mov rax, qword [r13 + 8]
add rcx, rcx
cmp byte [rax + rcx*8 + 0x29], 0x45
jne 0x14006b3d5
xor r9d, r9d
mov dword [rsp + 0x20], r15d
mov r8d, r12d
mov rcx, r14
lea edx, [r9 + 0x27]
call fcn.14004fb30
jmp 0x14006b3d5
cmp qword [rsi + 0x1c8], r15
jne 0x14006b0b9
lea rdx, str.RAISE___may_only_be_used_within_a_trigger_program
mov rcx, rsi
call fcn.140030280
xor eax, eax
jmp 0x14006b455
cmp byte [rdi + 1], 2
jne 0x14006b0d4
mov rax, qword [rsi + 0x1c0]
mov rcx, rsi
test rax, rax
cmovne rcx, rax
mov byte [rcx + 0x21], 1
movsx eax, byte [rdi + 1]
mov r12, qword [rdi + 8]
cmp al, 4
jne 0x14006b0eb
mov r9d, 4
xor r8d, r8d
jmp 0x14006b11b
mov rcx, rsi
mov edi, eax
call fcn.140098e90
mov r14, rax
cmp edi, 2
jne 0x14006b112
mov rcx, qword [rsi + 0x1c0]
mov rdx, rsi
test rcx, rcx
cmovne rdx, rcx
mov byte [rdx + 0x21], 1
mov r9d, edi
mov r8d, 0x713
mov edx, 0x18
mov dword [rsp + 0x20], r15d
mov rcx, r14
call fcn.14004fb30
xor r9d, r9d
mov r8, r12
mov edx, eax
mov rcx, r14
call fcn.140050160
jmp 0x14006b3d5
mov rax, qword [rdi + 0x20]
mov rcx, r14
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x58], r15
mov r13, qword [rax + 8]
mov eax, dword [rax]
mov dword [rsp + 0x44], eax
call fcn.14004fc70
mov rbx, qword [rdi + 0x10]
mov dword [rsp + 0x4c], eax
test rbx, rbx
je 0x14006b1d7
movups xmm0, xmmword [rbx]
lea r8, [rsp + 0x48]
mov rdx, rbx
mov rcx, rsi
movaps xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [rbx + 0x10]
movaps xmmword [rbp - 0x10], xmm1
movups xmm0, xmmword [rbx + 0x20]
movaps xmmword [rbp], xmm0
movups xmm1, xmmword [rbx + 0x30]
movaps xmmword [rbp + 0x10], xmm1
movsd xmm0, qword [rbx + 0x40]
movsd qword [rbp + 0x20], xmm0
call fcn.14006b600
movzx ecx, byte [rbp - 0x20]
and dword [rbp - 0x1c], 0xffffefff
mov dword [rbp + 0xc], eax
lea rax, [rbp - 0x20]
mov qword [rbp - 0x60], rax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x58], rax
mov byte [rbp + 0x16], cl
mov byte [rbp - 0x20], 0x9f
mov byte [rbp - 0x70], 0x4f
mov dword [rsp + 0x48], r15d
mov eax, dword [rsp + 0x44]
dec eax
test eax, eax
jle 0x14006b293
test rbx, rbx
je 0x14006b2d1
lea ebx, [rax - 1]
shr ebx, 1
inc ebx
nop word [rax + rax]
inc dword [rsi + 0x70]
mov rcx, r14
mov rax, qword [r13]
mov qword [rbp - 0x58], rax
call fcn.14004fc70
mov rdx, qword [rsp + 0x58]
mov r9d, 0x10
mov r8d, eax
mov rcx, rsi
mov edi, eax
call fcn.14006bef0
mov rdx, qword [r13 + 0x28]
mov r8d, r12d
mov rcx, rsi
call fcn.14006b790
mov r9d, dword [rsp + 0x4c]
xor r8d, r8d
mov rcx, r14
mov dword [rsp + 0x20], r15d
lea edx, [r8 + 0x10]
call fcn.14004fb30
mov rcx, rsi
call fcn.140069d20
mov r9, qword [r14 + 0x30]
not edi
test edi, edi
js 0x14006b27b
mov rdx, qword [r9 + 0x80]
test rdx, rdx
je 0x14006b27b
mov eax, dword [r14 + 0x3c]
movsxd rcx, edi
mov dword [rdx + rcx*4], eax
mov eax, dword [r14 + 0x3c]
add r13, 0x50
dec eax
mov dword [r9 + 0x64], eax
sub rbx, 1
jne 0x14006b200
mov ebx, dword [rsp + 0x4c]
movsxd rax, dword [rsp + 0x44]
test al, 1
je 0x14006b37b
inc dword [rsi + 0x70]
lea rcx, [rax + rax*4]
mov rdx, qword [rsp + 0x78]
mov r8d, r12d
mov rdx, qword [rdx + 8]
mov rdx, qword [rdx + rcx*8 - 0x28]
mov rcx, rsi
call fcn.14006b790
mov rcx, rsi
call fcn.140069d20
jmp 0x14006b392
movsxd rdi, eax
test eax, eax
jle 0x14006b293
dec rdi
shr rdi, 1
inc rdi
inc dword [rsi + 0x70]
mov rcx, r14
mov rbx, qword [r13]
call fcn.14004fc70
mov r9d, 0x10
mov dword [rsp + 0x68], eax
mov r8d, eax
mov rdx, rbx
mov rcx, rsi
call fcn.14006bef0
mov rdx, qword [r13 + 0x28]
mov r8d, r12d
mov rcx, rsi
call fcn.14006b790
mov ebx, dword [rsp + 0x4c]
xor r8d, r8d
mov r9d, ebx
mov dword [rsp + 0x20], r15d
mov rcx, r14
lea edx, [r8 + 0x10]
call fcn.14004fb30
mov rcx, rsi
call fcn.140069d20
mov eax, dword [rsp + 0x68]
mov r9, qword [r14 + 0x30]
not eax
test eax, eax
js 0x14006b35e
mov rdx, qword [r9 + 0x80]
test rdx, rdx
je 0x14006b35e
movsxd rcx, eax
mov eax, dword [r14 + 0x3c]
mov dword [rdx + rcx*4], eax
mov eax, dword [r14 + 0x3c]
add r13, 0x50
dec eax
mov dword [r9 + 0x64], eax
sub rdi, 1
jne 0x14006b2e1
jmp 0x14006b297
xor r8d, r8d
mov dword [rsp + 0x20], r15d
mov r9d, r12d
mov rcx, r14
lea edx, [r8 + 0x1c]
call fcn.14004fb30
mov rdx, qword [r14 + 0x30]
not ebx
test ebx, ebx
js 0x14006ab14
mov r8, qword [rdx + 0x80]
test r8, r8
je 0x14006ab14
movsxd rcx, ebx
jmp 0x14006ab0c
xor r8d, r8d
mov dword [rsp + 0x20], r15d
mov r9d, r12d
mov rcx, r14
lea edx, [r8 + 0x1c]
call fcn.14004fb30
jmp 0x14006b3d5
mov ebx, dword [rsp + 0x40]
cmp dword [rsp + 0x48], 0
je 0x14006b413
movzx r8d, byte [rsi + 0x1f]
cmp r8b, 8
jae 0x14006b413
mov ecx, r15d
lea rax, [rsi + 0x88]
mov edx, dword [rsp + 0x48]
cmp dword [rax + 0xc], edx
je 0x14006b40f
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x14006b3f1
mov dword [rsi + r8*4 + 0x24], edx
inc byte [rsi + 0x1f]
jmp 0x14006b413
mov byte [rax + 6], 1
cmp dword [rsp + 0x50], 0
je 0x14006b453
movzx edx, byte [rsi + 0x1f]
cmp dl, 8
jae 0x14006b453
lea rax, [rsi + 0x88]
nop word [rax + rax]
mov ecx, dword [rsp + 0x50]
cmp dword [rax + 0xc], ecx
je 0x14006b44f
inc r15d
add rax, 0x14
cmp r15d, 0xa
jl 0x14006b430
mov dword [rsi + rdx*4 + 0x24], ecx
inc byte [rsi + 0x1f]
jmp 0x14006b453
mov byte [rax + 6], 1
mov eax, ebx
mov r13, qword [rsp + 0x198]
mov rcx, qword [rbp + 0x30]
xor rcx, rsp
call fcn.1400c2880
add rsp, 0x140
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret