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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb8
mov rbx, qword [rcx + 0x10]
xor esi, esi
xor r13b, r13b
mov qword [rsp + 0x80], rsi
mov rbp, rdx
mov byte [rsp + 0x100], r13b
mov rdi, rcx
mov dword [rsp + 0x78], esi
movsxd r11, dword [rbx + 0x90]
mov r12d, esi
mov dword [rsp + 0x68], esi
mov qword [rsp + 0xa8], rbx
mov dword [rsp + 0x7c], r11d
cmp dword [rbx + 0x94], r11d
jg 0x14005619c
xor r9d, r9d
mov dword [rsp + 0x20], esi
xor r8d, r8d
lea edx, [rsi + 0xf]
mov rcx, rbx
call fcn.140066970
mov r9, qword [rsp + 0x118]
mov dword [rsp + 0x7c], eax
jmp 0x1400561c3
lea rcx, [r11 + r11*2]
lea eax, [r11 + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], 0xf
mov qword [rax + rcx*8 + 8], rsi
mov qword [rax + rcx*8 + 0x10], rsi
mov rax, qword [rbp]
xor r11d, r11d
mov r14, qword [rbp + 0x20]
mov r15d, esi
mov r10, qword [r9 + 0x60]
movabs rcx, 0x8000000000000000
mov dword [rsp + 0x50], esi
mov rdx, qword [rax + 8]
movzx eax, byte [r9 + 0x40]
imul rsi, rax, 0x68
movsxd rax, dword [rbp + 0x14]
mov ebp, r11d
add rsi, rdx
mov qword [rsp + 0x90], rdx
imul rax, rax, 0x38
mov r8, qword [rsi + 0x28]
add rax, r14
mov qword [rsp + 0x88], r8
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x58], r10
mov qword [rsp + 0x60], r11
cmp r14, rax
jae 0x1400565c1
test byte [r14 + 0x12], 2
mov rsi, qword [r14]
jne 0x140056459
movzx r8d, byte [r9 + 0x40]
mov rcx, rsi
call fcn.14009cc40
test eax, eax
je 0x14005644f
test rsi, rsi
je 0x140056272
mov rcx, qword [rdi]
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
call fcn.14005d020
mov rbp, rax
xor esi, esi
jmp 0x140056275
mov rbp, rsi
mov r15, qword [rdi]
test r12, r12
jne 0x14005628d
mov r12, rbp
mov qword [rsp + 0x80], rbp
jmp 0x140056445
test rbp, rbp
je 0x140056445
mov eax, dword [r12 + 4]
or eax, dword [rbp + 4]
and eax, 0x20000003
cmp eax, 0x20000000
jne 0x14005638d
cmp byte [rdi + 0x134], 2
jae 0x14005638d
mov rdx, r12
mov rcx, rdi
call fcn.14009bdc0
mov rdx, rbp
mov rcx, rdi
call fcn.14009bdc0
lea rdx, [rsp + 0x40]
mov dword [rsp + 0x40], esi
lea rcx, [0x1401053c4]
call fcn.1400a52d0
test eax, eax
mov esi, eax
mov eax, 0x48
mov edx, 0x4a
cmovne edx, eax
mov rcx, r15
call fcn.1400941a0
mov qword [rsp + 0x80], rax
mov r12, rax
test rax, rax
je 0x140056445
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r12], xmm0
movups xmmword [r12 + 0x10], xmm0
movups xmmword [r12 + 0x20], xmm0
movups xmmword [r12 + 0x30], xmm0
mov qword [r12 + 0x40], rax
mov byte [r12], 0x9b
mov word [r12 + 0x32], 0xffff
test esi, esi
je 0x140056370
mov eax, dword [rsp + 0x40]
mov ecx, 0x20800800
test eax, eax
mov dword [r12 + 8], eax
mov edx, 0x10800800
mov dword [r12 + 0x28], 1
cmovne ecx, edx
or dword [r12 + 4], ecx
jmp 0x140056445
lea rax, [r12 + 0x48]
mov qword [r12 + 8], rax
mov word [rax], 0x30
mov dword [r12 + 0x28], 1
jmp 0x140056445
mov edx, 0x48
mov rcx, r15
call fcn.1400941a0
mov rsi, rax
test rax, rax
je 0x140056424
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
movups xmmword [rsi + 0x10], xmm0
movups xmmword [rsi + 0x20], xmm0
movups xmmword [rsi + 0x30], xmm0
mov qword [rsi + 0x40], rax
mov byte [rsi], 0x2c
mov word [rsi + 0x32], 0xffff
mov qword [rsi + 0x18], rbp
mov edx, dword [rbp + 4]
and edx, 0x400208
or edx, dword [rsi + 4]
mov dword [rsi + 4], edx
mov ecx, dword [rbp + 0x28]
inc ecx
mov dword [rsi + 0x28], ecx
mov qword [rsi + 0x10], r12
mov eax, dword [r12 + 4]
and eax, 0x400208
or eax, edx
mov dword [rsi + 4], eax
mov eax, dword [r12 + 0x28]
cmp eax, ecx
jl 0x140056403
inc eax
mov dword [rsi + 0x28], eax
mov rax, qword [rdi]
mov r8d, dword [rax + 0x94]
cmp dword [rsi + 0x28], r8d
jle 0x14005643a
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, rdi
call fcn.140096cc0
jmp 0x14005643a
mov rcx, qword [rdi]
mov rdx, r12
call fcn.14009be50
mov rcx, qword [rdi]
mov rdx, rbp
call fcn.14009be50
mov r12, rsi
mov qword [rsp + 0x80], rsi
mov rbp, qword [rsp + 0x60]
mov r15d, dword [rsp + 0x50]
mov rax, qword [rsp + 0x48]
mov r10, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x70]
mov edx, dword [rsi + 0x4c]
cmp dword [r14 + 0x1c], edx
jne 0x14005658f
test byte [r14 + 0x14], 0x82
je 0x14005658f
movzx ecx, byte [rsi + 0x44]
test cl, 0x58
je 0x1400564a8
mov rax, qword [r14]
mov r8d, dword [rax + 4]
test r8b, 3
je 0x14005658a
cmp dword [rax + 0x34], edx
jne 0x14005658a
test cl, 0x18
je 0x1400564a8
test r8b, 2
jne 0x14005658a
mov rax, qword [rsp + 0x110]
test qword [r14 + 0x28], rax
jne 0x14005658a
movsxd rax, dword [r14 + 0x20]
test eax, eax
js 0x14005658a
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x28]
mov rcx, qword [rax + 8]
movzx edx, byte [rcx + rdx*8 + 0xc]
mov rcx, qword [r14]
call fcn.1400a6860
test eax, eax
je 0x140056585
movsxd rcx, dword [r14 + 0x20]
cmp ecx, 0x40
jl 0x1400564fc
movabs rsi, 0x8000000000000000
jmp 0x140056504
mov esi, 1
shl rsi, cl
test r13b, r13b
jne 0x140056534
mov rax, qword [rsp + 0x88]
lea rcx, [rcx + rcx*2]
lea rdx, str.automatic_index_on__s__s_
mov r9, qword [rax + 8]
mov r8, qword [rax]
mov r9, qword [r9 + rcx*8]
mov ecx, 0x11c
call fcn.140031cf0
mov r13b, 1
test rbp, rsi
jne 0x140056580
mov rdx, qword [rsp + 0x58]
lea ebp, [r15 + 1]
mov rcx, qword [rdi]
mov r8d, ebp
call fcn.1400ef470
test eax, eax
jne 0x140057000
mov r10, qword [rsp + 0x58]
movsxd rcx, r15d
mov r15d, ebp
mov dword [rsp + 0x50], ebp
mov rbp, qword [rsp + 0x60]
mov rax, qword [r10 + 0x48]
or rbp, rsi
mov rsi, qword [rsp + 0x70]
mov qword [rsp + 0x60], rbp
mov qword [rax + rcx*8], r14
jmp 0x14005658a
mov rsi, qword [rsp + 0x70]
mov r10, qword [rsp + 0x58]
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x90]
add r14, 0x38
mov r9, qword [rsp + 0x118]
cmp r14, rax
jb 0x140056232
mov r8, qword [rsp + 0x88]
xor r11d, r11d
movabs rcx, 0x8000000000000000
mov word [r10 + 0x3c], r15w
mov word [r10 + 0x18], r15w
mov dword [r10 + 0x38], 0x4241
cmp byte [r8 + 0x3f], 2
jne 0x1400565e3
mov rbp, 0xffffffffffffffff
jmp 0x1400565ed
not rbp
or rbp, rcx
and rbp, qword [rsi + 0x58]
movsx eax, word [r8 + 0x36]
mov esi, 0x3f
mov qword [rsp + 0x60], rbp
mov edx, r11d
cmp si, ax
jl 0x140056610
mov esi, eax
test eax, eax
jle 0x14005662b
nop word [rax + rax]
mov ecx, r15d
mov eax, edx
inc r15d
bt rbp, rax
cmovae r15d, ecx
inc edx
cmp edx, esi
jl 0x140056610
mov dword [rsp + 0x50], r15d
mov rax, qword [rsp + 0x70]
cmp qword [rax + 0x58], 0
jge 0x140056648
movsx eax, word [r8 + 0x36]
add r15d, 0xffffffc1
add r15d, eax
mov dword [rsp + 0x50], r15d
mov rcx, qword [rdi]
lea ebp, [r15 + 1]
movsx r14d, bp
lea eax, [r14*4 + 9]
add eax, r14d
and eax, 0xfffffff8
lea eax, [rax + r14*8]
add eax, 0x70
movsxd r13, eax
test rcx, rcx
je 0x14005667a
mov rdx, r13
call fcn.1400941a0
jmp 0x140056682
mov rcx, r13
call fcn.1400aaa30
mov r15, rax
test rax, rax
je 0x140057000
mov r8, r13
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov r10d, dword [rsp + 0x50]
lea rax, [r15 + 0x70]
mov qword [r15 + 0x40], rax
lea r13, [0x14010a250]
xor r11d, r11d
movsx r8, bp
mov word [r15 + 0x60], bp
mov r9d, r11d
mov rbp, qword [rsp + 0x88]
mov word [r15 + 0x5e], r10w
lea rdx, [rax + r8*8]
mov dword [rsp + 0x40], r11d
lea eax, [r14 + 1]
mov qword [r15 + 0x10], rdx
mov r14, qword [rsp + 0x108]
movsxd rcx, eax
mov qword [rsp + 0xa0], r11
lea rax, [rdx + rcx*2]
mov qword [r15 + 8], rax
lea rax, [rax + r8*2]
mov qword [r15 + 0x38], rax
mov rax, qword [rsp + 0x58]
mov qword [rax + 0x20], r15
lea rax, str.auto_index
mov qword [r15], rax
mov rax, qword [rsp + 0x48]
mov qword [r15 + 0x18], rbp
mov r14, qword [r14 + 0x20]
cmp r14, rax
jae 0x140056919
mov rbx, qword [rsp + 0x70]
mov r12, qword [rsp + 0x110]
mov qword [rsp + 0x90], r11
mov qword [rsp + 0x98], r11
nop word [rax + rax]
mov edx, dword [rbx + 0x4c]
cmp dword [r14 + 0x1c], edx
jne 0x1400568e5
test byte [r14 + 0x14], 0x82
je 0x1400568e5
movzx ecx, byte [rbx + 0x44]
test cl, 0x58
je 0x14005679f
mov rax, qword [r14]
mov r8d, dword [rax + 4]
test r8b, 3
je 0x1400568e0
cmp dword [rax + 0x34], edx
mov rax, qword [rsp + 0x48]
jne 0x1400568e5
test cl, 0x18
je 0x14005679f
test r8b, 2
jne 0x1400568e5
mov r13d, esi
test qword [r14 + 0x28], r12
jne 0x1400568e5
movsxd rax, dword [r14 + 0x20]
test eax, eax
js 0x1400568e0
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x28]
mov rcx, qword [rax + 8]
movzx edx, byte [rcx + rdx*8 + 0xc]
mov rcx, qword [r14]
call fcn.1400a6860
test eax, eax
je 0x1400568db
mov ecx, dword [r14 + 0x20]
cmp ecx, 0x40
jl 0x1400567ee
movabs rax, 0x8000000000000000
jmp 0x1400567f6
mov eax, 1
shl rax, cl
mov r8, qword [rsp + 0xa0]
test r8, rax
jne 0x1400568db
mov rbp, qword [r14]
or r8, rax
mov rax, qword [r15 + 8]
mov rdx, qword [rsp + 0x98]
mov qword [rsp + 0xa0], r8
mov word [rdx + rax], cx
test dword [rbp + 4], 0x400
je 0x140056838
mov rsi, qword [rbp + 0x10]
mov rdx, qword [rbp + 0x18]
jmp 0x140056840
mov rsi, qword [rbp + 0x18]
mov rdx, qword [rbp + 0x10]
test dword [rdx + 4], 0x200
jne 0x140056867
test rsi, rsi
je 0x140056857
test dword [rsi + 4], 0x200
jne 0x140056864
mov rcx, rdi
call fcn.14009b670
test rax, rax
jne 0x140056874
mov rdx, rsi
mov rcx, rdi
call fcn.14009b670
test rax, rax
je 0x140056879
mov rcx, qword [rax]
jmp 0x140056880
lea rcx, [0x14010a250]
mov r8, qword [rsp + 0x90]
mov esi, r13d
mov r9d, dword [rsp + 0x40]
mov rax, qword [r15 + 0x40]
inc r9d
add qword [rsp + 0x98], 2
mov dword [rsp + 0x40], r9d
mov qword [r8 + rax], rcx
add r8, 8
mov rcx, qword [rbp + 0x10]
mov qword [rsp + 0x90], r8
test rcx, rcx
je 0x1400568e0
call fcn.140097540
mov r9d, dword [rsp + 0x40]
cmp al, 0x42
mov rax, qword [rsp + 0x48]
je 0x1400568e5
mov byte [rsp + 0x100], 1
jmp 0x1400568e5
mov r9d, dword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
add r14, 0x38
cmp r14, rax
jb 0x140056750
mov rbx, qword [rsp + 0xa8]
lea r13, [0x14010a250]
mov r12, qword [rsp + 0x80]
xor r11d, r11d
mov r10d, dword [rsp + 0x50]
mov rbp, qword [rsp + 0x88]
mov ecx, r11d
test esi, esi
jle 0x140056966
mov r11, qword [rsp + 0x60]
movsxd rax, r9d
lea rdx, [rax*8]
lea r8, [rax + rax]
mov eax, ecx
bt r11, rax
jae 0x140056958
mov rax, qword [r15 + 8]
inc r9d
mov word [r8 + rax], cx
add r8, 2
mov rax, qword [r15 + 0x40]
mov qword [rdx + rax], r13
add rdx, 8
inc ecx
cmp ecx, esi
jl 0x140056934
mov dword [rsp + 0x40], r9d
xor r11d, r11d
mov r13, qword [rsp + 0x70]
lea rsi, [0x14010a250]
cmp qword [r13 + 0x58], 0
jge 0x1400569cf
mov r8d, 0x3f
cmp r8w, word [rbp + 0x36]
jge 0x1400569cf
movsxd rax, r9d
lea rcx, [rax*8]
lea rdx, [rax + rax]
nop word [rax + rax]
mov rax, qword [r15 + 8]
lea rdx, [rdx + 2]
inc r9d
lea rcx, [rcx + 8]
mov word [rdx + rax - 2], r8w
inc r8d
mov rax, qword [r15 + 0x40]
mov qword [rcx + rax - 8], rsi
movsx eax, word [rbp + 0x36]
cmp r8d, eax
jl 0x1400569a0
mov dword [rsp + 0x40], r9d
mov rax, qword [r15 + 8]
lea edx, [r10 + 1]
mov r14, qword [rsp + 0x118]
movsxd rcx, r9d
mov word [rax + rcx*2], 0xffff
mov rax, qword [r15 + 0x40]
mov qword [rax + rcx*8], rsi
mov eax, dword [rdi + 0x34]
mov dword [r14 + 8], eax
inc dword [rdi + 0x34]
movsxd rcx, dword [rbx + 0x90]
mov r8d, dword [r14 + 8]
cmp dword [rbx + 0x94], ecx
jg 0x140056a24
mov r9d, edx
mov dword [rsp + 0x20], r11d
mov edx, 0x74
mov rcx, rbx
call fcn.140066970
jmp 0x140056a52
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x74
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r11d
mov qword [rax + rcx*8 + 0x10], r11
mov rsi, qword [rdi + 0x10]
mov rdx, r15
mov rcx, rdi
call fcn.1400a9640
mov r8, rax
test rax, rax
je 0x140056aac
mov rax, qword [rsi]
cmp byte [rax + 0x67], 0
je 0x140056a90
cmp qword [rax + 0x308], 0
jne 0x140056aac
add dword [r8], 0xffffffff
jne 0x140056aac
mov rcx, qword [r8 + 0x10]
mov rdx, r8
call fcn.140094260
jmp 0x140056aac
movsxd rax, dword [rsi + 0x90]
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov byte [rax + rcx*8 - 0x17], 0xf8
mov qword [rax + rcx*8 - 8], r8
mov rax, qword [rdi]
test dword [rax + 0x60], 0x80000
jne 0x140056b0e
cmp byte [rsp + 0x100], 0
je 0x140056b0e
mov rax, qword [rsp + 0x108]
mov r8, r14
mov rcx, rdi
mov rdx, qword [rax]
call fcn.1400d96b0
inc dword [rdi + 0x38]
mov edx, dword [rdi + 0x38]
mov dword [r14 + 0x34], edx
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140056b55
xor r11d, r11d
mov r9d, edx
mov r8d, 0x2710
mov dword [rsp + 0x20], r11d
mov rcx, rbx
lea edx, [r11 + 0x4d]
call fcn.140066970
xor r9d, r9d
test byte [r13 + 0x48], 0x20
je 0x140056c5c
movsxd r8, dword [rbx + 0x90]
mov ebp, dword [r13 + 0x3c]
mov dword [rsp + 0x68], r8d
cmp dword [rbx + 0x94], r8d
jg 0x140056b8b
mov dword [rsp + 0x20], r9d
xor r8d, r8d
xor r9d, r9d
mov rcx, rbx
lea edx, [r9 + 0x47]
call fcn.140066970
mov dword [rsp + 0x68], eax
xor r9d, r9d
jmp 0x140056bb6
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x4d
mov dword [rax + rcx*8 + 4], 0x2710
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x140056b11
lea rcx, [r8 + r8*2]
lea eax, [r8 + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], 0x47
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r9
movsxd rcx, dword [rbx + 0x90]
mov edx, dword [r13 + 0x38]
cmp dword [rbx + 0x94], ecx
jg 0x140056be4
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, ebp
mov rcx, rbx
lea edx, [r9 + 0xb]
call fcn.140066970
xor r9d, r9d
jmp 0x140056c11
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0xb
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r9
movsxd rsi, dword [rbx + 0x90]
cmp dword [rbx + 0x94], esi
jg 0x140056c3b
mov dword [rsp + 0x20], r9d
mov r8d, ebp
xor r9d, r9d
mov rcx, rbx
lea edx, [r9 + 0xc]
call fcn.140066970
mov esi, eax
jmp 0x140056cb7
lea eax, [rsi + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rsi + rsi*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0xc
mov dword [rax + rcx*8 + 4], ebp
jmp 0x140056ca9
movsxd rsi, dword [rbx + 0x90]
mov edx, dword [r14 + 4]
cmp dword [rbx + 0x94], esi
jg 0x140056c8a
mov dword [rsp + 0x20], r9d
mov r8d, edx
xor r9d, r9d
mov rcx, rbx
lea edx, [r9 + 0x24]
call fcn.140066970
mov esi, eax
jmp 0x140056cb7
lea eax, [rsi + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rsi + rsi*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x24
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 0x10], r9
mov qword [rax + rcx*8 + 8], 0
mov eax, 0x10
test r12, r12
je 0x140056ce7
dec dword [rdi + 0x44]
mov r9d, eax
mov r8d, dword [rdi + 0x44]
mov rdx, r12
mov rcx, rdi
mov dword [rsp + 0x78], r8d
call fcn.14009c130
mov rcx, qword [rsp + 0x58]
or dword [rcx + 0x38], 0x20000
movzx eax, byte [rdi + 0x1f]
test al, al
jne 0x140056cf7
inc dword [rdi + 0x38]
mov ebp, dword [rdi + 0x38]
jmp 0x140056d06
dec al
movzx eax, al
mov byte [rdi + 0x1f], al
mov ebp, dword [rdi + rax*4 + 0xe8]
mov r8d, dword [r14 + 4]
xor r11d, r11d
mov dword [rsp + 0x38], r11d
mov r9d, ebp
mov qword [rsp + 0x30], r11
mov rdx, r15
mov qword [rsp + 0x28], r11
mov rcx, rdi
mov dword [rsp + 0x20], r11d
call fcn.1400a44b0
mov edx, dword [r14 + 0x34]
mov r15d, eax
test edx, edx
je 0x140056d70
mov rax, qword [rsp + 0x58]
movsxd rcx, dword [rbx + 0x90]
movzx r8d, word [rax + 0x18]
cmp dword [rbx + 0x94], ecx
jg 0x140056da0
mov dword [rsp + 0x28], r8d
xor r9d, r9d
mov r8d, edx
mov dword [rsp + 0x20], r15d
mov edx, 0xb7
mov rcx, rbx
call fcn.1400482a0
xor r9d, r9d
movsxd rcx, dword [rbx + 0x90]
mov edx, dword [r14 + 8]
cmp dword [rbx + 0x94], ecx
jg 0x140056dd3
mov dword [rsp + 0x20], r9d
mov r8d, edx
mov r9d, ebp
mov edx, 0x8a
mov rcx, rbx
call fcn.140066970
jmp 0x140056e00
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0xfdb7
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r15d
mov dword [rax + rcx*8 + 0x10], r8d
jmp 0x140056d73
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x8a
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
movsxd rax, dword [rbx + 0x90]
test eax, eax
jle 0x140056e1d
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
mov word [rax + rcx*8 - 0x16], 0x10
test r12, r12
je 0x140056e51
mov rcx, qword [rbx + 0x18]
mov edx, dword [rsp + 0x78]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140056e41
mov r8d, edx
mov rdx, rbx
call fcn.14007f6e0
jmp 0x140056e51
mov rcx, qword [rcx + 0x50]
mov eax, dword [rbx + 0x90]
movsxd rdx, edx
mov dword [rcx + rdx*4], eax
test byte [r13 + 0x48], 0x20
lea r14, [0x14014aa48]
je 0x140056f18
mov rax, qword [rbx]
cmp byte [rax + 0x67], 0
je 0x140056e71
mov rcx, r14
jmp 0x140056e85
movsxd rax, dword [rsp + 0x68]
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rcx, [rax + rcx*8]
mov r8, qword [rsp + 0x118]
mov edx, esi
mov eax, dword [rsp + 0x40]
add eax, r15d
mov dword [rcx + 8], eax
mov rcx, rdi
mov eax, dword [r8 + 8]
mov r8d, dword [r8 + 4]
mov r9d, dword [r13 + 0x40]
mov dword [rsp + 0x20], eax
call fcn.1400e0fd0
movsxd rcx, dword [rbx + 0x90]
xor r11d, r11d
cmp dword [rbx + 0x94], ecx
jg 0x140056ee4
mov r9d, esi
mov dword [rsp + 0x20], r11d
xor r8d, r8d
lea edx, [r11 + 9]
mov rcx, rbx
call fcn.140066970
and dword [r13 + 0x48], 0xffffffdf
jmp 0x140056f9a
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r11d
mov qword [rax + rcx*8 + 0x10], r11
and dword [r13 + 0x48], 0xffffffdf
jmp 0x140056f9a
mov r8, qword [rsp + 0x118]
lea edx, [rsi + 1]
movsxd rcx, dword [rbx + 0x90]
xor r11d, r11d
mov r8d, dword [r8 + 4]
cmp dword [rbx + 0x94], ecx
jg 0x140056f4f
mov r9d, edx
mov dword [rsp + 0x20], r11d
lea edx, [r11 + 0x27]
mov rcx, rbx
call fcn.140066970
jmp 0x140056f7d
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x27
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r11d
mov qword [rax + rcx*8 + 0x10], r11
movsxd rax, dword [rbx + 0x90]
test eax, eax
jle 0x140056f9a
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
mov word [rax + rcx*8 - 0x16], 3
mov rax, qword [rbx]
mov edx, dword [rbx + 0x90]
cmp byte [rax + 0x67], 0
je 0x140056fae
mov rax, r14
jmp 0x140056fc0
movsxd rax, esi
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
test ebp, ebp
je 0x140056fd9
movzx eax, byte [rdi + 0x1f]
cmp al, 8
jae 0x140056fd9
mov dword [rdi + rax*4 + 0xe8], ebp
inc byte [rdi + 0x1f]
mov rax, qword [rbx]
mov edx, dword [rbx + 0x90]
cmp byte [rax + 0x67], 0
jne 0x140056ffc
movsxd rax, dword [rsp + 0x7c]
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea r14, [rax + rcx*8]
mov dword [r14 + 8], edx
test r12, r12
je 0x140057010
mov rcx, qword [rdi]
mov rdx, r12
call fcn.14009be50
add rsp, 0xb8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret