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

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x8f8
mov qword [rsp + 0x8b0], 0xfffffffffffffffe
mov rax, qword [0x1403abd28]
xor rax, rsp
mov qword [rsp + 0x8e0], rax
mov rcx, qword [rsp + 0x910]
add rcx, 0x98
call fcn.14008bd80
mov dword [rsp + 0xb4], eax
mov dword [rsp + 0x20], 0
lea rcx, [rsp + 0x88]
call qword [sym.imp.MSVCP90.dll_public:_void___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void____ptr64]
nop
mov dword [rsp + 0xb0], 1
lea r9, [rsp + 0x88]
lea r8, [rsp + 0x30]
mov rdx, qword [rsp + 0x920]
mov rcx, qword [rsp + 0x910]
call fcn.140088c60
mov dword [rsp + 0xb0], eax
mov dword [rsp + 0xb8], 0
jmp 0x140087a6a
mov eax, dword [rsp + 0xb8]
add eax, 1
mov dword [rsp + 0xb8], eax
mov eax, dword [rsp + 0xb4]
cmp dword [rsp + 0xb8], eax
jge 0x140087b28
movsxd rdi, dword [rsp + 0xb8]
mov rcx, qword [rsp + 0x910]
add rcx, 0x98
lea rdx, [rsp + 0x808]
call fcn.140116ce0
mov r8, rdi
lea rdx, [rsp + 0x818]
mov rcx, rax
call fcn.14008d360
mov rcx, rax
call fcn.1400f8600
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0xc0]
movsx ecx, word [rax + 0xbe]
mov rax, qword [rsp + 0x910]
mov dword [rax + 0x40], ecx
mov rdx, qword [rsp + 0xc0]
add rdx, 0xe2
mov rcx, qword [rsp + 0x910]
add rcx, 0x48
call fcn.140049c10
mov rdx, qword [rsp + 0x918]
mov rcx, qword [rsp + 0x910]
call fcn.140086670
cmp eax, 0xffffffff
je 0x140087b23
mov dword [rsp + 0x20], 1
jmp 0x140087b28
jmp 0x140087a59
cmp dword [rsp + 0xb0], 0
je 0x140087b58
mov rax, qword [rsp + 0x918]
mov qword [rsp + 0x60], rax
mov rcx, qword [rsp + 0x910]
add rcx, 0xc8
lea rdx, [rsp + 0x30]
call fcn.14008c110
cmp dword [rsp + 0x20], 0
jne 0x140088c1d
mov dword [rsp + 0xcc], 0
mov dword [rsp + 0xc8], 0
lea rcx, [rsp + 0x88]
call qword [sym.imp.MSVCP90.dll_public:_char_const____ptr64___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const___ptr64]
lea rdx, [0x14016434c]
mov rcx, rax
call qword [sym.imp.MSVCR90.dll__stricmp]
test eax, eax
jne 0x140087ba6
mov dword [rsp + 0xcc], 1
lea rcx, [rsp + 0x88]
call qword [sym.imp.MSVCP90.dll_public:_char_const____ptr64___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const___ptr64]
lea rdx, [0x140164358]
mov rcx, rax
call qword [sym.imp.MSVCR90.dll__stricmp]
test eax, eax
jne 0x140087bd3
mov dword [rsp + 0xc8], 1
cmp dword [rsp + 0xcc], 0
jne 0x140087beb
cmp dword [rsp + 0xc8], 0
je 0x1400881dc
mov rax, qword [rsp + 0x920]
mov r9d, dword [rax + 0x1c]
xor r8d, r8d
mov edx, 0x80
mov rcx, qword [rsp + 0x920]
call fcn.14009b340
mov qword [rsp + 0xd0], rax
cmp qword [rsp + 0xd0], 0
je 0x1400881d7
mov rax, qword [rsp + 0xd0]
movzx eax, byte [rax + 8]
test eax, eax
je 0x1400881d7
mov rax, qword [rsp + 0xd0]
movzx eax, byte [rax + 9]
test eax, eax
jne 0x1400881d7
mov rax, qword [rsp + 0xd0]
movzx ecx, word [rax + 0x20]
mov rax, qword [rsp + 0xd0]
add rax, rcx
mov qword [rsp + 0x118], rax
mov rax, qword [rsp + 0x910]
mov dword [rax + 0x40], 2
mov rax, qword [rsp + 0x910]
mov dword [rax + 0x3c], 1
mov rax, qword [rsp + 0x910]
mov qword [rax + 0x80], 0
lea rcx, [rsp + 0xd8]
call fcn.140049b00
nop
mov rax, qword [rsp + 0xd0]
movzx ecx, word [rax + 0x20]
mov rax, qword [rsp + 0xd0]
mov r8d, dword [rax + 4]
sub r8d, ecx
lea r9, [rsp + 0xd8]
mov rdx, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x910]
call fcn.140086bf0
mov dword [rsp + 0x110], eax
cmp dword [rsp + 0x110], 0
je 0x1400881ca
mov dword [rsp + 0x124], 0
mov dword [rsp + 0x144], 0
jmp 0x140087d1f
mov eax, dword [rsp + 0x144]
add eax, 1
mov dword [rsp + 0x144], eax
lea rcx, [rsp + 0xe0]
call fcn.140030a90
cmp dword [rsp + 0x144], eax
jge 0x140087d5f
movsxd rdx, dword [rsp + 0x144]
lea rcx, [rsp + 0xe0]
call fcn.14008bcc0
mov ecx, dword [rax + 8]
mov eax, dword [rsp + 0x124]
add eax, ecx
mov dword [rsp + 0x124], eax
jmp 0x140087d0e
mov rax, qword [rsp + 0x910]
movsxd rcx, dword [rax + 0x2c]
xor edx, edx
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x28]
div rcx
mov dword [rsp + 0x128], eax
movd xmm0, dword [rsp + 0x124]
cvtdq2pd xmm0, xmm0
movd xmm1, dword [rsp + 0x128]
cvtdq2pd xmm1, xmm1
divsd xmm1, xmm0
mov rcx, qword [rsp + 0x910]
call fcn.1400894d0
mov dword [rsp + 0x140], eax
xor edx, edx
mov rax, qword [rsp + 0x920]
mov eax, dword [rax + 0x1c]
mov rcx, qword [rsp + 0x910]
div dword [rcx + 0x2c]
mov dword [rsp + 0x12c], eax
mov dword [rsp + 0x120], 8
mov rax, qword [rsp + 0x918]
mov qword [rsp + 0x130], rax
cmp dword [rsp + 0xc8], 0
je 0x140087e14
movsxd rcx, dword [rsp + 0x12c]
mov rax, qword [rsp + 0x130]
sub rax, rcx
mov qword [rsp + 0x130], rax
lea rcx, [rsp + 0xe0]
xor edx, edx
call fcn.14008bcc0
movsxd rcx, dword [rsp + 0x140]
mov rax, qword [rax]
imul rax, rcx
mov qword [rsp + 0x138], rax
mov rcx, qword [rsp + 0x138]
mov rax, qword [rsp + 0x130]
sub rax, rcx
mov qword [rsp + 0x138], rax
cmp qword [rsp + 0x138], 0
jl 0x1400881ca
lea rcx, [rsp + 0x148]
call fcn.140049b00
nop
mov rcx, qword [rsp + 0x910]
mov rax, qword [rsp + 0x138]
mov qword [rcx + 0x80], rax
mov rcx, qword [rsp + 0x910]
mov eax, dword [rsp + 0x140]
mov dword [rcx + 0x3c], eax
mov rcx, qword [rsp + 0x910]
mov eax, dword [rsp + 0x12c]
mov dword [rcx + 0x40], eax
lea r8, [rsp + 0x148]
mov rdx, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x910]
call fcn.140086820
test eax, eax
je 0x1400881bc
mov dword [rsp + 0x180], 0
mov dword [rsp + 0x184], 0
jmp 0x140087efb
mov eax, dword [rsp + 0x184]
add eax, 1
mov dword [rsp + 0x184], eax
mov rcx, qword [rsp + 0x910]
add rcx, 0x98
call fcn.14008bd80
cmp dword [rsp + 0x184], eax
jge 0x140087fb4
movsxd rdx, dword [rsp + 0x184]
mov rcx, qword [rsp + 0x910]
add rcx, 0x98
call fcn.14008bdb0
mov rdx, rax
lea rcx, [rsp + 0x190]
call fcn.14008ae90
nop
mov rax, qword [rsp + 0x138]
cmp qword [rsp + 0x198], rax
jne 0x140087fa2
movsx eax, word [rsp + 0x196]
cmp eax, dword [rsp + 0x140]
jne 0x140087fa2
lea rdx, [rsp + 0x148]
lea rcx, [rsp + 0x272]
call fcn.14008ad80
movzx eax, al
test eax, eax
je 0x140087fa2
mov dword [rsp + 0x180], 1
lea rcx, [rsp + 0x190]
call fcn.14008ad40
jmp 0x140087fb4
lea rcx, [rsp + 0x190]
call fcn.14008ad40
jmp 0x140087eea
cmp dword [rsp + 0x180], 0
jne 0x1400881bc
mov dword [rsp + 0x450], 0
lea rcx, [rsp + 0x2f0]
call fcn.14008ac50
nop
lea rcx, [rsp + 0x2f0]
call fcn.14008ab00
mov edx, 0x156
mov word [rsp + 0x2f0], dx
mov dword [rsp + 0x2f2], 7
movzx eax, word [rsp + 0x140]
mov word [rsp + 0x2f6], ax
movzx eax, word [rsp + 0x12c]
mov word [rsp + 0x3ae], ax
movzx eax, word [rsp + 0x120]
mov word [rsp + 0x3b0], ax
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x396], rax
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x2f8], rax
mov qword [rsp + 0x300], 0
mov qword [rsp + 0x39e], 0xffffffffffffffff
mov qword [rsp + 0x3a6], 0
lea rdx, [rsp + 0x148]
lea rcx, [rsp + 0x3d2]
call fcn.140049c10
mov byte [rsp + 0x394], 0
mov byte [rsp + 0x395], 1
mov dword [rsp + 0x390], 0x1f4
lea rcx, [rsp + 0x458]
call qword [sym.imp.MSVCP90.dll_public:_void___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void____ptr64]
nop
lea r8, [rsp + 0x458]
mov rdx, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x910]
mov rcx, qword [rcx + 0x18]
call fcn.14009ae90
test eax, eax
je 0x140088182
lea rcx, [rsp + 0x458]
call qword [sym.imp.MSVCP90.dll_public:_bool___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::empty_void_const___ptr64]
movzx eax, al
test eax, eax
jne 0x140088182
lea rcx, [rsp + 0x458]
call qword [sym.imp.MSVCP90.dll_public:_unsigned_long_long_unsigned___int64____cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::size_void_const___ptr64]
mov qword [rsp + 0x8b8], rax
cmp qword [rsp + 0x8b8], 0x80
jae 0x140088141
lea rcx, [rsp + 0x458]
call qword [sym.imp.MSVCP90.dll_public:_unsigned_long_long_unsigned___int64____cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::size_void_const___ptr64]
mov qword [rsp + 0x8c0], rax
mov rax, qword [rsp + 0x8c0]
mov qword [rsp + 0x8c8], rax
jmp 0x14008814d
mov qword [rsp + 0x8c8], 0x7f
lea rcx, [rsp + 0x458]
call qword [sym.imp.MSVCP90.dll_public:_char_const____ptr64___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const___ptr64]
mov qword [rsp + 0x8d0], rax
mov r8, qword [rsp + 0x8c8]
mov rdx, qword [rsp + 0x8d0]
lea rcx, [rsp + 0x308]
call qword [sym.imp.MSVCR90.dll_strncpy]
nop
mov rcx, qword [rsp + 0x910]
add rcx, 0x98
lea rdx, [rsp + 0x2f0]
call fcn.14008bdf0
nop
lea rcx, [rsp + 0x458]
call qword [sym.imp.MSVCP90.dll_public:_void___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void____ptr64]
nop
lea rcx, [rsp + 0x2f0]
call fcn.14008ad40
nop
lea rcx, [rsp + 0x148]
call fcn.140049b30
nop
lea rcx, [rsp + 0xd8]
call fcn.140049b30
jmp 0x140088c1d
cmp dword [rsp + 0xb0], 0
je 0x140088c1d
cmp qword [rsp + 0x58], 4
jle 0x140088c1d
mov rcx, qword [rsp + 0x910]
add rcx, 0x98
call fcn.14008bd80
test rax, rax
jne 0x1400883f7
mov rax, qword [rsp + 0x910]
cmp dword [rax + 0x38], 0x100
jne 0x14008824e
mov dword [rsp + 0x828], 1
lea rcx, [rsp + 0x88]
call qword [sym.imp.MSVCP90.dll_public:_void___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void____ptr64]
mov eax, dword [rsp + 0x828]
jmp 0x140088c3d
lea rcx, [rsp + 0x4a0]
call fcn.14008ac50
nop
lea rcx, [rsp + 0x4a0]
call fcn.14008ab00
mov edx, 0x156
mov word [rsp + 0x4a0], dx
mov dword [rsp + 0x4a2], 7
xor eax, eax
mov word [rsp + 0x4a6], ax
xor edx, edx
mov rax, qword [rsp + 0x920]
mov eax, dword [rax + 0x1c]
mov rcx, qword [rsp + 0x910]
div dword [rcx + 0x2c]
mov word [rsp + 0x55e], ax
mov eax, 8
mov word [rsp + 0x560], ax
mov qword [rsp + 0x546], 0xffffffffffffffff
mov qword [rsp + 0x4a8], 0
mov qword [rsp + 0x4b0], 0
mov qword [rsp + 0x54e], 0xffffffffffffffff
mov qword [rsp + 0x556], 0
mov byte [rsp + 0x544], 0
mov byte [rsp + 0x545], 1
mov dword [rsp + 0x540], 0x64
mov rax, qword [rsp + 0x918]
mov qword [rsp + 0x576], rax
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x572], eax
movsx ecx, word [rsp + 0x55e]
mov eax, dword [rsp + 0x572]
imul eax, ecx
mov ecx, eax
mov rax, qword [rsp + 0x918]
sub rax, rcx
mov qword [rsp + 0x546], rax
mov dword [rsp + 0x57e], 1
cmp qword [rsp + 0x546], 0
jle 0x1400883c4
mov rax, qword [rsp + 0x546]
mov qword [rsp + 0x600], rax
mov ecx, dword [rsp + 0x572]
add ecx, 1
movsx eax, word [rsp + 0x55e]
imul eax, ecx
mov dword [rsp + 0x608], eax
lea rcx, [rsp + 0x58a]
lea rdx, [rsp + 0x600]
call fcn.140049fe0
mov rcx, qword [rsp + 0x910]
add rcx, 0x98
lea rdx, [rsp + 0x4a0]
call fcn.14008bdf0
mov dword [rsp + 0x82c], 1
lea rcx, [rsp + 0x4a0]
call fcn.14008ad40
nop
lea rcx, [rsp + 0x88]
call qword [sym.imp.MSVCP90.dll_public:_void___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void____ptr64]
mov eax, dword [rsp + 0x82c]
jmp 0x140088c3d
mov rcx, qword [rsp + 0x910]
add rcx, 0x98
call fcn.14008bd80
mov rdx, rax
sub rdx, 1
mov rcx, qword [rsp + 0x910]
add rcx, 0x98
call fcn.14008bdb0
mov qword [rsp + 0x480], rax
mov dword [rsp + 0x498], 0
mov dword [rsp + 0x49c], 0
mov rax, qword [rsp + 0x920]
mov r9d, dword [rax + 0x1c]
xor r8d, r8d
mov edx, 0x80
mov rcx, qword [rsp + 0x920]
call fcn.14009b340
mov qword [rsp + 0x490], rax
cmp qword [rsp + 0x490], 0
je 0x14008861d
mov rax, qword [rsp + 0x480]
cmp dword [rax + 0x152], 0
jne 0x14008861d
mov rax, qword [rsp + 0x490]
movzx eax, byte [rax + 8]
test eax, eax
je 0x14008861d
mov rax, qword [rsp + 0x490]
movzx eax, byte [rax + 9]
test eax, eax
jne 0x14008861d
mov rax, qword [rsp + 0x490]
movzx ecx, word [rax + 0x20]
mov rax, qword [rsp + 0x490]
add rax, rcx
mov qword [rsp + 0x650], rax
mov rax, qword [rsp + 0x910]
mov dword [rax + 0x40], 2
mov rax, qword [rsp + 0x910]
mov dword [rax + 0x3c], 1
lea rcx, [rsp + 0x610]
call fcn.140049b00
nop
mov rax, qword [rsp + 0x490]
movzx ecx, word [rax + 0x20]
mov rax, qword [rsp + 0x490]
mov r8d, dword [rax + 4]
sub r8d, ecx
lea r9, [rsp + 0x610]
mov rdx, qword [rsp + 0x650]
mov rcx, qword [rsp + 0x910]
call fcn.140086bf0
mov dword [rsp + 0x648], eax
cmp dword [rsp + 0x648], 0
je 0x140088610
mov dword [rsp + 0x658], 0
mov dword [rsp + 0x660], 0
jmp 0x14008857a
mov eax, dword [rsp + 0x660]
add eax, 1
mov dword [rsp + 0x660], eax
lea rcx, [rsp + 0x618]
call fcn.140030a90
cmp dword [rsp + 0x660], eax
jge 0x1400885ba
movsxd rdx, dword [rsp + 0x660]
lea rcx, [rsp + 0x618]
call fcn.14008bcc0
mov ecx, dword [rax + 8]
mov eax, dword [rsp + 0x658]
add eax, ecx
mov dword [rsp + 0x658], eax
jmp 0x140088569
mov rax, qword [rsp + 0x910]
movsxd rcx, dword [rax + 0x2c]
xor edx, edx
mov rax, qword [rsp + 0x490]
mov rax, qword [rax + 0x28]
div rcx
mov dword [rsp + 0x65c], eax
movd xmm0, dword [rsp + 0x658]
cvtdq2pd xmm0, xmm0
movd xmm1, dword [rsp + 0x65c]
cvtdq2pd xmm1, xmm1
divsd xmm1, xmm0
mov rcx, qword [rsp + 0x910]
call fcn.1400894d0
mov dword [rsp + 0x49c], eax
lea rcx, [rsp + 0x610]
call fcn.140049b30
mov rax, qword [rsp + 0x480]
cmp dword [rax + 0xde], 0
je 0x140088646
mov rax, qword [rsp + 0x480]
add rax, 0xe2
mov qword [rsp + 0x8d8], rax
jmp 0x14008865c
mov rax, qword [rsp + 0x480]
add rax, 0x11a
mov qword [rsp + 0x8d8], rax
mov rax, qword [rsp + 0x8d8]
mov qword [rsp + 0x488], rax
mov rax, qword [rsp + 0x480]
movsx rcx, word [rax + 0xbe]
mov rax, qword [rsp + 0x480]
mov eax, dword [rax + 0xd2]
mov rdx, qword [rsp + 0x58]
sub rdx, rax
imul rdx, rcx
mov rcx, qword [rsp + 0x480]
mov rcx, qword [rcx + 0xd6]
mov rax, qword [rsp + 0x918]
sub rax, rcx
cmp rax, rdx
jne 0x14008878f
mov rcx, qword [rsp + 0x488]
add rcx, 8
call fcn.140030a90
test rax, rax
jbe 0x14008878f
mov rcx, qword [rsp + 0x488]
add rcx, 8
call fcn.140030a90
sub rax, 1
mov dword [rsp + 0x678], eax
movsxd rdx, dword [rsp + 0x678]
mov rcx, qword [rsp + 0x488]
add rcx, 8
call fcn.14008bcc0
mov qword [rsp + 0x670], rax
mov rax, qword [rsp + 0x480]
mov ecx, dword [rax + 0x98]
add ecx, 1
mov rax, qword [rsp + 0x480]
mov dword [rax + 0x98], ecx
mov rax, qword [rsp + 0x480]
movsx rdx, word [rax + 0xbe]
mov rax, qword [rsp + 0x480]
mov ecx, dword [rax + 0xd2]
mov rax, qword [rsp + 0x58]
sub rax, rcx
imul rax, rdx
mov qword [rsp + 0x668], rax
mov rax, qword [rsp + 0x670]
mov ecx, dword [rax + 8]
add rcx, qword [rsp + 0x668]
mov rax, qword [rsp + 0x670]
mov dword [rax + 8], ecx
mov dword [rsp + 0x498], 1
jmp 0x140088866
cmp qword [rsp + 0x58], 4
jl 0x140088866
xor edx, edx
mov rax, qword [rsp + 0x920]
mov eax, dword [rax + 0x1c]
mov rcx, qword [rsp + 0x910]
div dword [rcx + 0x2c]
mov ecx, eax
mov rax, qword [rsp + 0x480]
movsx eax, word [rax + 0xbe]
cmp eax, ecx
jne 0x140088866
mov rax, qword [rsp + 0x480]
movsx rax, word [rax + 0xbe]
mov rcx, qword [rsp + 0x58]
imul rcx, rax
mov rax, qword [rsp + 0x918]
sub rax, rcx
test rax, rax
jle 0x140088866
mov rax, qword [rsp + 0x918]
mov qword [rsp + 0x680], rax
mov rax, qword [rsp + 0x480]
movsx eax, word [rax + 0xbe]
mov dword [rsp + 0x688], eax
mov rcx, qword [rsp + 0x480]
add rcx, 0x122
lea rdx, [rsp + 0x680]
call fcn.140049fe0
mov rdx, qword [rsp + 0x480]
mov dword [rdx + 0x152], 0
mov rax, qword [rsp + 0x480]
mov dword [rax + 0xde], 0
mov dword [rsp + 0x498], 1
cmp dword [rsp + 0x498], 0
je 0x140088c1d
mov rcx, qword [rsp + 0x480]
mov eax, dword [rsp + 0x58]
mov dword [rcx + 0xd2], eax
mov rcx, qword [rsp + 0x480]
mov rax, qword [rsp + 0x918]
mov qword [rcx + 0xd6], rax
mov rax, qword [rsp + 0x480]
movsx eax, word [rax + 6]
test eax, eax
jne 0x1400888cb
cmp dword [rsp + 0x49c], 0
je 0x1400888cb
mov rcx, qword [rsp + 0x480]
movzx eax, word [rsp + 0x49c]
mov word [rcx + 6], ax
mov rax, qword [rsp + 0x480]
cmp dword [rax + 0x152], 0
jne 0x14008890c
cmp dword [rsp + 0x49c], 0
je 0x14008890c
mov rax, qword [rsp + 0x480]
cmp dword [rax + 0xde], 0
jne 0x14008890c
mov rcx, qword [rsp + 0x480]
mov eax, dword [rsp + 0x49c]
mov dword [rcx + 0x152], eax
cmp dword [rsp + 0x49c], 0
je 0x14008893e
mov rax, qword [rsp + 0x480]
cmp dword [rax + 0x152], 0
je 0x14008893e
mov rcx, qword [rsp + 0x480]
mov eax, dword [rsp + 0x49c]
cmp dword [rcx + 0x152], eax
jne 0x140088979
cmp dword [rsp + 0x49c], 0
je 0x140088c1d
mov rax, qword [rsp + 0x480]
movsx eax, word [rax + 6]
test eax, eax
je 0x140088c1d
mov rax, qword [rsp + 0x480]
movsx eax, word [rax + 6]
cmp eax, dword [rsp + 0x49c]
je 0x140088c1d
lea rcx, [rsp + 0x690]
call fcn.14008ac50
nop
lea rcx, [rsp + 0x690]
call fcn.14008ab00
mov edx, 0x156
mov word [rsp + 0x690], dx
mov dword [rsp + 0x692], 7
movzx eax, word [rsp + 0x49c]
mov word [rsp + 0x696], ax
mov rax, qword [rsp + 0x480]
movzx eax, word [rax + 0xbe]
mov word [rsp + 0x74e], ax
mov eax, 8
mov word [rsp + 0x750], ax
mov qword [rsp + 0x736], 0xffffffffffffffff
mov rax, qword [rsp + 0x480]
mov rax, qword [rax + 8]
mov qword [rsp + 0x698], rax
mov qword [rsp + 0x6a0], 0
mov qword [rsp + 0x73e], 0xffffffffffffffff
mov qword [rsp + 0x746], 0
mov byte [rsp + 0x734], 0
mov byte [rsp + 0x735], 1
mov dword [rsp + 0x730], 0x64
mov rax, qword [rsp + 0x918]
mov qword [rsp + 0x766], rax
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x762], eax
mov dword [rsp + 0x76e], 1
movsx ecx, word [rsp + 0x74e]
mov eax, dword [rsp + 0x762]
imul eax, ecx
mov ecx, eax
mov rax, qword [rsp + 0x918]
sub rax, rcx
mov qword [rsp + 0x736], rax
cmp qword [rsp + 0x736], 0
jle 0x140088c10
mov rax, qword [rsp + 0x736]
mov qword [rsp + 0x7f8], rax
mov ecx, dword [rsp + 0x762]
add ecx, 1
mov rax, qword [rsp + 0x480]
movsx eax, word [rax + 0xbe]
imul eax, ecx
mov dword [rsp + 0x800], eax
lea rcx, [rsp + 0x77a]
lea rdx, [rsp + 0x7f8]
call fcn.140049fe0
mov rcx, qword [rsp + 0x480]
add rcx, 0x122
call fcn.140030a90
mov dword [rsp + 0x7f0], eax
cmp dword [rsp + 0x7f0], 0
jle 0x140088bbd
movsxd rdi, dword [rsp + 0x7f0]
mov rcx, qword [rsp + 0x480]
add rcx, 0x122
lea rdx, [rsp + 0x840]
call fcn.140116ce0
mov r8, rdi
lea rdx, [rsp + 0x850]
mov rcx, rax
call fcn.14000e410
mov r8d, 1
lea rdx, [rsp + 0x860]
mov rcx, rax
call fcn.140067370
lea rdi, [rsp + 0x8a0]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rdi, [rsp + 0x830]
lea rsi, [rsp + 0x8a0]
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rdi, [rsp + 0x890]
lea rsi, [rsp + 0x830]
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov rcx, qword [rsp + 0x480]
add rcx, 0x122
lea r8, [rsp + 0x890]
lea rdx, [rsp + 0x870]
call fcn.14006c480
mov rcx, qword [rsp + 0x910]
add rcx, 0x98
lea rdx, [rsp + 0x690]
call fcn.14008bdf0
mov rcx, qword [rsp + 0x910]
add rcx, 0x98
call fcn.14008bd80
mov rdx, rax
sub rdx, 1
mov rcx, qword [rsp + 0x910]
add rcx, 0x98
call fcn.14008bdb0
mov qword [rsp + 0x480], rax
lea rcx, [rsp + 0x690]
call fcn.14008ad40
mov dword [rsp + 0x880], 1
lea rcx, [rsp + 0x88]
call qword [sym.imp.MSVCP90.dll_public:_void___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void____ptr64]
mov eax, dword [rsp + 0x880]
mov rcx, qword [rsp + 0x8e0]
xor rcx, rsp
call fcn.14012bc90
add rsp, 0x8f8
pop rdi
pop rsi
ret