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

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], r9
mov qword [r11 + 0x10], rdx
mov qword [r11 + 8], rcx
push rdi
push r12
push r13
push r14
sub rsp, 0xd8
mov r14, qword [rcx + 0x10]
mov rdi, qword [rcx]
xor eax, eax
mov r13, r9
mov r9, rcx
xor ecx, ecx
test r13, r13
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x50], rdi
mov r12, r8
mov qword [r11 - 0x80], rax
je 0x14005d0a5
cmp dword [r13], 0x40
cmovge r13, rcx
mov qword [r11 + 0x20], r13
mov r8d, dword [rdx]
mov qword [rsp + 0x68], r13
cmp r8d, 0x40
jle 0x14005d0d9
lea rdx, str.at_most__d_tables_in_a_join
mov r8d, 0x40
mov rcx, r9
call fcn.140034800
xor eax, eax
add rsp, 0xd8
pop r14
pop r13
pop r12
pop rdi
ret
movzx eax, word [rsp + 0x128]
mov qword [rsp + 0x110], rbx
mov qword [rsp + 0xd0], rbp
and ax, 0x40
mov qword [rsp + 0xc8], rsi
mov word [rsp + 0x34], ax
mov eax, 1
cmovne r8d, eax
mov eax, r8d
mov dword [rsp + 0x30], r8d
imul eax, eax, 0x58
add eax, 0x347
and eax, 0xfffffff8
test rdi, rdi
movsxd rbp, eax
lea rbx, [rbp + 0x60]
je 0x14005d137
cmp byte [rdi + 0x51], cl
je 0x14005d137
mov rsi, rcx
jmp 0x14005d1e7
test rbx, rbx
je 0x14005d19d
cmp rbx, 0x7fffff00
jae 0x14005d19d
cmp dword [0x1400bf010], ecx
je 0x14005d18b
mov rcx, qword [0x1400c52b8]
test rcx, rcx
je 0x14005d15f
call qword [0x1400bf098]
lea rdx, [rsp + 0x38]
mov ecx, ebx
call fcn.140011830
mov rcx, qword [0x1400c52b8]
test rcx, rcx
je 0x14005d184
call qword [0x1400bf0a8]
mov rsi, qword [rsp + 0x38]
jmp 0x14005d196
mov rsi, qword [rsp + 0x38]
jmp 0x14005d196
mov ecx, ebx
call qword [0x1400bf038]
mov rsi, rax
test rsi, rsi
jne 0x14005d1a9
jmp 0x14005d1a0
mov rsi, rcx
test rdi, rdi
je 0x14005d1a9
mov byte [rdi + 0x51], 1
test rsi, rsi
je 0x14005d1d2
mov r8, rbx
xor edx, edx
mov rcx, rsi
call sub.msvcrt.dll_memset
mov r9, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x108]
mov r8d, dword [rsp + 0x30]
jmp 0x14005d1e7
mov r9, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x108]
mov r8d, dword [rsp + 0x30]
cmp byte [rdi + 0x51], 0
mov qword [rsp + 0xc0], r15
je 0x14005d284
test rsi, rsi
je 0x14005ddcf
cmp qword [rdi + 0x2c0], 0
je 0x14005d21c
mov rdx, rsi
mov rcx, rdi
call fcn.140011800
jmp 0x14005ddcf
cmp dword [0x1400bf010], 0
je 0x14005d276
mov rcx, qword [0x1400c52b8]
test rcx, rcx
je 0x14005d237
call qword [0x1400bf098]
mov rcx, rsi
call qword [0x1400bf050]
sub qword [0x1400c5018], 1
movsxd rcx, eax
sub qword [0x1400c4fd0], rcx
mov rcx, rsi
call qword [0x1400bf040]
mov rcx, qword [0x1400c52b8]
test rcx, rcx
je 0x14005ddcf
call qword [0x1400bf0a8]
jmp 0x14005ddcf
mov rcx, rsi
call qword [0x1400bf040]
jmp 0x14005ddcf
mov r15, qword [rsp + 0x120]
or r10, 0xffffffffffffffff
mov byte [rsi + 0x39], r8b
mov dword [rsi + 0x50], r10d
mov dword [rsi + 0x4c], r10d
mov qword [rsi], r9
mov qword [rsi + 0x18], r15
mov qword [rsi + 8], rdx
mov qword [rsi + 0x10], r13
mov rbx, qword [r14 + 0x30]
mov qword [rsp + 0x38], r10
movsxd rdi, dword [rbx + 0x78]
lea eax, [rdi + 1]
mov dword [rbx + 0x78], eax
lea eax, [rdi - 1]
test edi, eax
jne 0x14005d2f2
mov rdx, qword [rbx + 0x80]
mov rcx, qword [rbx]
lea eax, [rdi + rdi + 1]
movsxd r8, eax
shl r8, 2
call fcn.140022050
mov r9, qword [rsp + 0x100]
or r10, 0xffffffffffffffff
mov qword [rbx + 0x80], rax
mov rcx, qword [rbx + 0x80]
test rcx, rcx
je 0x14005d302
mov dword [rcx + rdi*4], r10d
lea rcx, [rsi + rbp]
mov eax, r10d
lea r14, [rsi + 0x54]
sub eax, edi
xor edi, edi
test r12, r12
mov dword [rsi + 0x40], eax
mov dword [rsi + 0x44], eax
movzx eax, word [rsp + 0x128]
mov word [rsi + 0x32], ax
mov eax, dword [r9 + 0x1cc]
lea r9, [rsi + 0x158]
mov dword [rsi + 0x48], eax
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x70], rcx
mov word [rcx + 0x2c], 0
mov word [rcx + 0x30], 3
mov dword [rcx + 0x28], edi
lea rax, [rcx + 0x48]
mov rbx, r12
mov qword [rcx + 0x38], rax
mov dword [r14], edi
lea rax, [r9 + 0x28]
mov qword [r9], rsi
mov qword [r9 + 8], rdi
mov dword [r9 + 0x14], edi
mov qword [r9 + 0x20], rax
mov dword [r9 + 0x18], 8
je 0x14005d3a5
mov eax, dword [rbx + 4]
bt eax, 0xc
jae 0x14005d3a5
bt eax, 0x12
jae 0x14005d39c
mov rax, qword [rbx + 0x20]
mov rcx, qword [rax + 8]
mov rbx, qword [rcx]
jmp 0x14005d3a0
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x14005d380
test rbx, rbx
mov byte [r9 + 0x10], 0x48
je 0x14005d3e6
cmp byte [rbx], 0x48
je 0x14005d3c4
xor r8d, r8d
mov rdx, r12
mov rcx, r9
call fcn.140016a20
jmp 0x14005d3e6
mov rdx, qword [rbx + 0x10]
mov r8b, 0x48
mov rcx, r9
call fcn.14001b830
mov rdx, qword [rbx + 0x18]
lea rcx, [rsi + 0x158]
mov r8b, 0x48
call fcn.14001b830
mov rcx, qword [rsp + 0x60]
mov ebp, edi
cmp dword [rcx + 0x14], edi
jle 0x14005d56e
mov r14, qword [rsp + 0x100]
mov r12d, dword [rsp + 0x30]
xor r15d, r15d
lea r13, [fcn.140005140]
lea rdx, [0x140005130]
test r12d, r12d
je 0x14005d513
mov rax, qword [rcx + 0x20]
mov rbx, qword [rdi + rax]
xor eax, eax
test rbx, rbx
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x90], rax
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xa0], rax
mov byte [rsp + 0xac], 2
mov qword [rsp + 0x88], r13
mov qword [rsp + 0x90], rdx
mov dword [rsp + 0xb0], r15d
je 0x14005d513
lea rcx, [rsp + 0x88]
mov rdx, rbx
call fcn.140005140
test eax, eax
jne 0x14005d504
bt dword [rbx + 4], 0xe
jb 0x14005d504
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x14005d4b5
lea rcx, [rsp + 0x88]
call fcn.14000f6b0
test eax, eax
jne 0x14005d504
mov rdx, qword [rbx + 0x18]
test rdx, rdx
je 0x14005d4cf
lea rcx, [rsp + 0x88]
call fcn.14000f6b0
test eax, eax
jne 0x14005d504
bt dword [rbx + 4], 0xb
jae 0x14005d4ee
mov rdx, qword [rbx + 0x20]
test rdx, rdx
je 0x14005d504
lea rcx, [rsp + 0x88]
call fcn.14000f5c0
jmp 0x14005d504
mov rdx, qword [rbx + 0x20]
test rdx, rdx
je 0x14005d504
lea rcx, [rsp + 0x88]
call fcn.140005840
cmp byte [rsp + 0xac], r15b
je 0x14005d53c
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rcx + 0x20]
mov r8d, dword [rsi + 0x44]
mov r9d, InitCommonControls
mov rdx, qword [rdx + rdi]
mov rcx, r14
call fcn.14004ac30
mov r11, qword [rsp + 0x60]
mov rax, qword [r11 + 0x20]
or word [rax + rdi + 0x1c], 4
mov rcx, qword [rsp + 0x60]
add ebp, 1
add rdi, 0x38
cmp ebp, dword [rcx + 0x14]
lea rdx, [0x140005130]
jl 0x14005d414
mov r13, qword [rsp + 0x118]
mov r15, qword [rsp + 0x120]
lea r14, [rsi + 0x54]
jmp 0x14005d573
mov r12d, dword [rsp + 0x30]
test r12d, r12d
jne 0x14005d59a
test r13, r13
je 0x14005d585
movzx eax, byte [r13]
mov byte [rsi + 0x34], al
mov di, word [rsp + 0x128]
bt di, 0xa
jae 0x14005d5a2
mov byte [rsi + 0x38], 1
jmp 0x14005d5a2
mov di, word [rsp + 0x128]
mov r10, qword [rsp + 0x108]
xor ebp, ebp
cmp dword [r10], ebp
mov r8d, ebp
jle 0x14005d5db
lea rdx, [r10 + 0x4c]
nop
nop
mov eax, dword [rdx]
movsxd rcx, dword [r14]
add r8d, 1
mov dword [r14 + rcx*4 + 4], eax
add dword [r14], 1
add rdx, 0x70
cmp r8d, dword [r10]
jl 0x14005d5c0
lea rax, [rsi + 0x158]
mov ebx, dword [rax + 0x14]
sub ebx, 1
js 0x14005d61a
nop
nop
lea rdx, [rsi + 0x158]
mov r8d, ebx
mov rcx, r10
call fcn.1400522a0
sub ebx, 1
mov r10, qword [rsp + 0x108]
jns 0x14005d5f0
lea r14, [rsi + 0x54]
lea rax, [rsi + 0x158]
mov r12, qword [rsp + 0x50]
cmp byte [r12 + 0x51], bpl
jne 0x14005ddb3
and di, 0x400
je 0x14005d665
mov rbx, qword [rsp + 0x100]
mov r9, r15
mov r8, rax
mov rcx, rbx
mov rdx, r10
call fcn.14004e8f0
test eax, eax
je 0x14005d654
mov byte [rsi + 0x38], 1
jmp 0x14005d66d
test r13, r13
jne 0x14005d66d
or word [rsi + 0x32], 0x200
mov qword [rsi + 0x10], r15
jmp 0x14005d66d
mov rbx, qword [rsp + 0x100]
mov r13d, dword [rsp + 0x30]
cmp r13d, 1
jne 0x14005d691
mov rdx, qword [rsp + 0x58]
test byte [rdx + 0x32], 0x20
jne 0x14005d691
lea rcx, [rsp + 0x58]
call fcn.14004d250
test eax, eax
jne 0x14005d6d9
lea rcx, [rsp + 0x58]
call fcn.140057220
test eax, eax
jne 0x14005ddb3
xor edx, edx
mov rcx, rsi
call fcn.140051140
cmp byte [r12 + 0x51], bpl
jne 0x14005ddb3
cmp qword [rsi + 0x10], rbp
je 0x14005d6d9
movzx edx, word [rsi + 0x30]
mov rcx, rsi
add dx, 1
call fcn.140051140
cmp byte [r12 + 0x51], bpl
jne 0x14005ddb3
cmp qword [rsi + 0x10], rbp
jne 0x14005d6f0
bt dword [r12 + 0x2c], 0x11
jae 0x14005d6f0
mov qword [rsi + 0x28], 0xffffffffffffffff
cmp dword [rbx + 0x4c], ebp
jne 0x14005ddb3
cmp byte [r12 + 0x51], bpl
jne 0x14005ddb3
cmp byte [rsi + 0x39], 2
jb 0x14005d7ee
test r15, r15
je 0x14005d7ee
mov rdx, r15
mov rcx, r14
call fcn.14000e8d0
mov rdx, qword [rsp + 0x68]
test rdx, rdx
mov rbx, rax
je 0x14005d73a
mov rcx, r14
call fcn.14000e8d0
or rbx, rax
cmp byte [rsi + 0x39], 2
jb 0x14005d7e6
mov r10, qword [rsi + 8]
nop
nop
movzx r9d, byte [rsi + 0x39]
mov rax, r9
imul rax, rax, 0x58
mov rcx, qword [rax + rsi + 0x330]
movzx eax, byte [rcx + 0x10]
imul rax, rax, 0x70
test byte [rax + r10 + 0x44], 8
je 0x14005d7d7
test di, di
jne 0x14005d780
bt dword [rcx + 0x28], 0xc
jae 0x14005d7d7
mov r8, qword [rcx + 8]
test rbx, r8
jne 0x14005d7d7
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x20]
movsxd rdx, dword [rax + 0x14]
imul rdx, rdx, 0x38
add rdx, rcx
cmp rcx, rdx
jae 0x14005d7c1
test qword [rcx + 0x30], r8
je 0x14005d7b1
mov rax, qword [rcx]
test byte [rax + 4], 1
je 0x14005d7bc
add rcx, 0x38
cmp rcx, rdx
jb 0x14005d7a2
jmp 0x14005d7c1
cmp rcx, rdx
jb 0x14005d7d7
sub r9b, 1
sub r13d, 1
cmp r9b, 2
mov byte [rsi + 0x39], r9b
jae 0x14005d750
mov rbx, qword [rsp + 0x100]
mov dword [rsp + 0x30], r13d
jmp 0x14005d7ee
mov rbx, qword [rsp + 0x100]
mov rcx, qword [rsi]
movsx eax, word [rsi + 0x30]
mov r11w, word [rsp + 0x128]
add dword [rcx + 0x1cc], eax
test r11b, 4
je 0x14005d83e
mov rcx, qword [rsi + 0x388]
bt dword [rcx + 0x28], 0xc
jae 0x14005d834
mov r10, qword [rsp + 0x108]
mov byte [rsi + 0x36], 1
mov rax, qword [r10 + 0x28]
test byte [rax + 0x3e], 0x20
jne 0x14005d846
and dword [rcx + 0x28], 0xffffffbf
jmp 0x14005d846
mov r10, qword [rsp + 0x108]
jmp 0x14005d846
mov r10, qword [rsp + 0x108]
test r13d, r13d
jle 0x14005dd05
mov r9d, dword [rsp + 0x130]
lea r8, [rsi + 0x388]
mov eax, r13d
mov qword [rsp + 0x118], r8
mov qword [rsp + 0x80], rax
movzx r15d, byte [r8 - 0x1c]
mov r14d, 0xfff0bdc0
mov qword [rsp + 0x48], 0xfffffffffff0bdc0
imul r15, r15, 0x70
mov r13, qword [r15 + r10 + 0x28]
mov rcx, qword [r13 + 0x48]
test rcx, rcx
je 0x14005d8d0
cmp dword [r12 + 0x28], 0
mov rdx, rbp
mov r14d, ebp
mov qword [rsp + 0x48], rdx
jle 0x14005d8d0
mov rax, qword [r12 + 0x20]
add rax, 0x18
cmp qword [rax], rcx
je 0x14005d8cb
add r14d, 1
add rdx, 1
add rax, 0x20
cmp r14d, dword [r12 + 0x28]
jl 0x14005d8b3
mov qword [rsp + 0x48], rdx
test byte [r13 + 0x3e], 2
mov r12, qword [r8]
mov qword [rsp + 0xb8], r12
jne 0x14005da85
cmp qword [r13 + 0x18], 0
jne 0x14005da85
test byte [r12 + 0x28], 0x40
jne 0x14005da85
test r11b, 0x10
jne 0x14005da85
cmp byte [rsi + 0x36], 0
mov ecx, 0x36
je 0x14005d91f
mov eax, dword [r15 + r10 + 0x4c]
mov ecx, 0x37
mov dword [rsi + 0x4c], eax
mov edx, dword [r15 + r10 + 0x4c]
mov dword [rsp + 0x20], ecx
mov r9, r13
mov r8d, r14d
mov rcx, rbx
call fcn.140040a20
cmp byte [rsi + 0x36], 0
jne 0x14005da64
cmp word [r13 + 0x36], 0x40
jge 0x14005da41
test byte [r13 + 0x3e], 0x20
jne 0x14005da1e
mov rdi, qword [rsp + 0x108]
mov ecx, ebp
mov rax, qword [r15 + rdi + 0x60]
test rax, rax
je 0x14005d978
nop
nop
add ecx, 1
shr rax, 1
jne 0x14005d970
mov rdx, qword [rsp + 0x40]
movsxd rbp, ecx
mov eax, dword [rdx + 0x3c]
mov rdi, qword [rdx + 8]
mov rcx, qword [rdx]
add eax, 0xffffffff
test rdi, rdi
je 0x14005d9ec
cmp byte [rcx + 0x51], 0
jne 0x14005d9ec
test eax, eax
cmovs eax, eax
cdqe
lea rbx, [rax + rax*2]
movsx edx, byte [rdi + rbx*8 + 1]
mov r8, qword [rdi + rbx*8 + 0x10]
call fcn.1400255f0
mov r8, qword [rsp + 0x118]
mov r9d, dword [rsp + 0x130]
mov r10, qword [rsp + 0x108]
mov r11w, word [rsp + 0x128]
mov qword [rdi + rbx*8 + 0x10], 0
mov dword [rdi + rbx*8 + 0x10], ebp
mov byte [rdi + rbx*8 + 1], 0xf2
xor ebp, ebp
jmp 0x14005da85
mov r8, rbp
mov edx, 0xfffffff2
call fcn.1400255f0
mov r8, qword [rsp + 0x118]
mov r9d, dword [rsp + 0x130]
mov r10, qword [rsp + 0x108]
mov r11w, word [rsp + 0x128]
xor ebp, ebp
jmp 0x14005da85
mov r8, qword [rsp + 0x118]
mov r9d, dword [rsp + 0x130]
mov r10, qword [rsp + 0x108]
mov r11w, word [rsp + 0x128]
jmp 0x14005da85
mov r8, qword [rsp + 0x118]
mov r9d, dword [rsp + 0x130]
mov r10, qword [rsp + 0x108]
mov r11w, word [rsp + 0x128]
jmp 0x14005da85
mov r8, qword [rsp + 0x118]
mov r9d, dword [rsp + 0x130]
mov r10, qword [rsp + 0x108]
mov r11w, word [rsp + 0x128]
bt dword [r12 + 0x28], 9
jae 0x14005dc6b
test byte [r13 + 0x3e], 0x20
mov r12, qword [r12 + 0x20]
mov edi, 0x36
je 0x14005dad2
mov eax, dword [r12 + 0x5c]
and al, 3
cmp al, 2
jne 0x14005dacb
mov ax, word [rsp + 0x34]
test ax, ax
je 0x14005dad7
mov ebx, dword [r8 - 0x44]
mov r15, qword [rsp + 0x100]
mov edi, ebp
jmp 0x14005db54
mov ax, word [rsp + 0x34]
jmp 0x14005dad7
mov ax, word [rsp + 0x34]
cmp byte [rsi + 0x36], 0
je 0x14005db13
mov rax, qword [r15 + r10 + 0x28]
mov ebx, r9d
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14005db01
nop
cmp rcx, r12
je 0x14005db01
mov rcx, qword [rcx + 0x28]
add ebx, 1
test rcx, rcx
jne 0x14005daf0
mov r15, qword [rsp + 0x100]
mov edi, 0x37
mov dword [rsi + 0x50], ebx
jmp 0x14005db54
test r9d, r9d
je 0x14005db37
test ax, ax
je 0x14005db37
bt r11w, 0xc
mov ebx, r9d
jae 0x14005db4c
mov r15, qword [rsp + 0x100]
mov edi, 0x35
jmp 0x14005db54
mov r15, qword [rsp + 0x100]
mov ebx, dword [r15 + 0x50]
lea eax, [rbx + 1]
mov dword [r15 + 0x50], eax
jmp 0x14005db54
mov r15, qword [rsp + 0x100]
test edi, edi
mov dword [r8 - 0x40], ebx
je 0x14005dc6b
mov r8, qword [rsp + 0x40]
mov r13d, dword [r12 + 0x50]
mov rax, qword [r8 + 0x30]
movsxd rbp, dword [r8 + 0x3c]
cmp dword [rax + 0x60], ebp
jg 0x14005db8d
mov edx, 1
mov rcx, r8
call fcn.1400214c0
test eax, eax
jne 0x14005dbc1
mov r8, qword [rsp + 0x40]
add dword [r8 + 0x3c], 1
mov rax, qword [r8 + 8]
lea rcx, [rbp + rbp*2]
mov dword [rax + rcx*8 + 8], r13d
xor r13d, r13d
mov byte [rax + rcx*8], dil
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r13
mov byte [rax + rcx*8 + 1], r13b
jmp 0x14005dbc4
xor r13d, r13d
mov rdi, qword [r15 + 0x10]
mov rdx, r12
mov rcx, r15
call fcn.14003ad20
mov rbx, qword [rdi + 8]
mov rcx, qword [rdi]
test rbx, rbx
mov rbp, rax
je 0x14005dc26
cmp byte [rcx + 0x51], 0
jne 0x14005dc26
mov edx, dword [rdi + 0x3c]
sub edx, 1
movsxd rdx, edx
lea rdi, [rdx + rdx*2]
movsx edx, byte [rbx + rdi*8 + 1]
mov r8, qword [rbx + rdi*8 + 0x10]
call fcn.1400255f0
test rbp, rbp
mov qword [rbx + rdi*8 + 0x10], r13
jne 0x14005dc1a
mov qword [rbx + rdi*8 + 0x10], r13
mov byte [rbx + rdi*8 + 1], bpl
jmp 0x14005dc33
mov qword [rbx + rdi*8 + 0x10], rbp
mov byte [rbx + rdi*8 + 1], 0xfa
jmp 0x14005dc33
mov r8, rax
mov edx, 0xfffffffa
call fcn.1400255f0
mov rax, qword [rsp + 0xb8]
mov eax, dword [rax + 0x28]
test al, 0xf
je 0x14005dc6b
test eax, 0x8002
jne 0x14005dc6b
test byte [rsi + 0x32], 1
jne 0x14005dc6b
mov rax, qword [rsp + 0x40]
mov r8, qword [rax + 8]
test r8, r8
je 0x14005dc6b
movsxd rax, dword [rax + 0x3c]
lea rdx, [rax + rax*2]
mov byte [r8 + rdx*8 - 0x15], 2
test r14d, r14d
js 0x14005dcb7
mov rbx, qword [rsp + 0x100]
mov ecx, r14d
mov eax, 1
mov edx, dword [rbx + 0x16c]
shl eax, cl
test edx, eax
jne 0x14005dcbf
or eax, edx
mov rdx, qword [rsp + 0x48]
mov dword [rbx + 0x16c], eax
mov rax, qword [rbx]
mov rcx, rdx
mov rax, qword [rax + 0x20]
shl rcx, 5
mov rcx, qword [rax + rcx + 0x18]
mov eax, dword [rcx]
mov dword [rbx + rdx*4 + 0x170], eax
jmp 0x14005dcbf
mov rbx, qword [rsp + 0x100]
mov r8, qword [rsp + 0x118]
mov r9d, dword [rsp + 0x130]
mov r12, qword [rsp + 0x50]
mov r10, qword [rsp + 0x108]
mov r11w, word [rsp + 0x128]
add r8, 0x58
sub qword [rsp + 0x80], 1
mov qword [rsp + 0x118], r8
mov ebp, 0
jne 0x14005d871
mov r13, qword [rsp + 0x40]
mov eax, dword [r13 + 0x3c]
mov dword [rsi + 0x3c], eax
cmp byte [r12 + 0x51], 0
jne 0x14005ddb3
mov r14d, dword [rsp + 0x30]
test r14d, r14d
jle 0x14005ddae
mov rdi, qword [rsp + 0x108]
lea rbx, [rsi + 0x36c]
nop
nop
mov rax, qword [rbx + 0x1c]
bt dword [rax + 0x28], 0xe
jae 0x14005dd81
movzx eax, byte [rbx]
mov r9, qword [rsp + 0x38]
lea rcx, [rbx - 0x2c]
imul rax, rax, 0x70
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x100]
lea r8, [rax + rdi + 8]
lea rdx, [rsi + 0x158]
call fcn.1400575b0
cmp byte [r12 + 0x51], 0
jne 0x14005ddb3
mov eax, dword [r13 + 0x3c]
mov r8, qword [rsp + 0x38]
mov edx, ebp
mov rcx, rsi
mov dword [rbx - 0xc], eax
call fcn.1400587e0
add ebp, 1
add rbx, 0x58
cmp ebp, r14d
mov qword [rsp + 0x38], rax
mov eax, dword [rbx - 0x6c]
mov dword [rsi + 0x40], eax
jl 0x14005dd40
mov rax, rsi
jmp 0x14005ddd1
mov rcx, qword [rsp + 0x100]
mov eax, dword [rsi + 0x48]
mov rdx, rsi
mov dword [rcx + 0x1cc], eax
mov rcx, r12
call fcn.14001fcb0
xor eax, eax
mov r15, qword [rsp + 0xc0]
mov rbp, qword [rsp + 0xd0]
mov rbx, qword [rsp + 0x110]
mov rsi, qword [rsp + 0xc8]
add rsp, 0xd8
pop r14
pop r13
pop r12
pop rdi
ret