Function at 0x4759d0
Capabilities:
Parse pe header

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
lea rax, [rsp - 0x160]
cmp rax, qword [rcx + 0x10]
jbe 0x478a9e
sub rsp, 0x1e0
mov qword [rsp + 0x1d8], rbp
lea rbp, [rsp + 0x1d8]
mov rax, qword [rsp + 0x1e8]
mov rcx, qword [rsp + 0x1f0]
xor edx, edx
xor ebx, ebx
mov rsi, rdx
mov rdi, qword [rsp + 0x200]
xor r8d, r8d
mov r9, qword [rsp + 0x1f8]
mov r10, rbx
mov r11, 0xffffffffffffffff
mov r12, r10
mov r13, 1
mov r14d, r8d
xor r15d, r15d
mov qword [rsp + 0x110], r13
mov qword [rsp + 0x60], r12
mov qword [rsp + 0xd8], r12
mov qword [rsp + 0x80], r12
mov qword [rsp + 0xb8], r12
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x108], rcx
mov qword [rsp + 0x158], rdx
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0x148], rsi
mov qword [rsp + 0x100], rdi
mov byte [rsp + 0x5e], r8b
mov qword [rsp + 0x198], r9
mov qword [rsp + 0x98], r10
mov qword [rsp + 0xa8], r11
mov qword [rsp + 0xf0], r12
mov qword [rsp + 0xf8], r13
mov byte [rsp + 0x5f], r14b
mov qword [rsp + 0x118], r15
mov qword [rsp], rax
mov qword [rsp + 8], rcx
call fcn.00471430
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x78], rax
mov rcx, qword [rsp + 0x10]
mov qword [rsp + 0x150], rcx
mov rdx, qword [rsp + 0x18]
mov qword [rsp + 0xa0], rdx
mov rbx, qword [rsp + 0x28]
mov qword [rsp + 0x120], rbx
mov rsi, qword [rsp + 0x30]
mov qword [rsp + 0x68], rsi
mov rdi, qword [rsp + 0x108]
mov r8, rdi
sub rdi, rsi
mov qword [rsp + 0x108], rdi
cmp rdx, rdi
ja 0x478a97
cmp rdi, r8
ja 0x478a97
mov r8, qword [rsp + 0x198]
mov qword [rsp], r8
mov r8, qword [rsp + 0x100]
mov qword [rsp + 8], r8
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], rdx
call fcn.00475770
mov rax, qword [rsp + 0x108]
mov rcx, qword [rsp + 0xa0]
sub rax, rcx
mov qword [rsp + 0x70], rax
lea rdx, [rax - 1]
sar rdx, 0x3f
xor rdx, 0xffffffffffffffff
and rdx, rcx
mov rbx, qword [rsp + 0x1a0]
add rdx, rbx
mov qword [rsp + 0x128], rdx
mov rbx, qword [rsp + 0x20]
mov qword [rsp + 0x130], rbx
mov rsi, qword [rsp + 0x28]
mov qword [rsp + 0x90], rsi
mov rdi, qword [rsp + 0x30]
mov qword [rsp + 0x178], rdi
test rdi, rdi
jne 0x4788bf
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x477916
movzx r8d, cx
cmp r8, 0x106
jg 0x476e2a
cmp r8, 0x21
jg 0x476acb
cmp r8, 0x1f
jg 0x4767f4
cmp r8, 0x15
jne 0x476230
cmp rsi, 3
jl 0x476123
movzx ecx, byte [rbx]
cmp cl, 0x55
jne 0x476123
movzx ecx, byte [rbx + 1]
cmp cl, 0x54
jne 0x476123
movzx ecx, byte [rbx + 2]
cmp cl, 0x43
jne 0x476123
mov rcx, qword [0x0088e7d0]
lea r8, [rsi - 4]
sar r8, 0x3f
xor r8, 0xffffffffffffffff
and r8, 3
add rbx, r8
add rsi, 0xfffffffffffffffd
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov qword [rsp + 0x1a0], rbx
mov qword [rsp + 0x110], rsi
mov rdx, qword [rsp + 0x98]
test rdx, rdx
jne 0x475ef7
test rdi, rdi
jne 0x475d22
mov rax, qword [rsp + 0x120]
mov rdx, r9
mov rbx, r8
mov rsi, qword [rsp + 0x148]
mov rdi, qword [rsp + 0x110]
mov r8d, r10d
mov r9, qword [rsp + 0x1a0]
mov r10, qword [rsp + 0x98]
mov qword [rsp + 0x110], r13
mov qword [rsp + 0x60], r14
mov r13, r15
mov r14d, r12d
mov r15, rcx
mov rcx, qword [rsp + 0x68]
mov r12, qword [rsp + 0xf0]
jmp 0x475a72
lea rcx, [0x006aea60]
mov qword [rsp], rcx
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0x190], rax
mov rcx, qword [rsp + 0x1f0]
mov qword [rax + 8], rcx
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x475ed4
mov rcx, qword [rsp + 0x1e8]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x200]
mov qword [rax + 0x18], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x10]
test ecx, ecx
jne 0x475eb1
mov rcx, qword [rsp + 0x1f8]
mov qword [rax + 0x10], rcx
mov rcx, qword [rsp + 0x70]
mov qword [rax + 0x28], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x20]
test ecx, ecx
jne 0x475e8e
mov rcx, qword [rsp + 0x128]
mov qword [rax + 0x20], rcx
mov rcx, qword [rsp + 0x110]
mov qword [rax + 0x38], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x30]
test ecx, ecx
jne 0x475e6b
mov rcx, qword [rsp + 0x1a0]
mov qword [rax + 0x30], rcx
mov qword [rax + 0x48], 0
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x40]
test ecx, ecx
jne 0x475e4f
mov qword [rax + 0x40], 0
mov ecx, dword [0x006f0b48]
mov rdx, qword [0x006f0b40]
mov rbx, qword [0x006f0b50]
mov qword [rsp + 0x218], rdx
mov dword [rsp + 0x220], ecx
mov qword [rsp + 0x228], rbx
lea rcx, [0x007e5300]
mov qword [rsp + 0x230], rcx
mov qword [rsp + 0x238], rax
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
mov qword [rsp], rdx
mov qword [rsp + 8], 0
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x475dfd
mov qword [rsp], rdx
mov rcx, qword [rsp + 0x1a0]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x475ddf
mov qword [rsp], rdx
mov rcx, qword [rsp + 0x128]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x475db5
mov qword [rsp], rdx
mov rcx, qword [rsp + 0x1f8]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x475d8e
mov qword [rsp], rax
mov rcx, qword [rsp + 0x1e8]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x475d64
lea rcx, [0x006aea60]
mov qword [rsp], rcx
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0x190], rax
mov rcx, qword [rsp + 0x1f0]
mov qword [rax + 8], rcx
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x476100
mov rcx, qword [rsp + 0x1e8]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x200]
mov qword [rax + 0x18], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x10]
test ecx, ecx
jne 0x4760dd
mov rcx, qword [rsp + 0x1f8]
mov qword [rax + 0x10], rcx
mov rcx, qword [rsp + 0x70]
mov qword [rax + 0x28], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x20]
test ecx, ecx
jne 0x4760ba
mov rcx, qword [rsp + 0x128]
mov qword [rax + 0x20], rcx
mov rcx, qword [rsp + 0x110]
mov qword [rax + 0x38], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x30]
test ecx, ecx
jne 0x476097
mov rcx, qword [rsp + 0x1a0]
mov qword [rax + 0x30], rcx
mov qword [rsp], 0
lea rcx, [0x006cf2f5]
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], 2
mov rcx, qword [rsp + 0x148]
mov qword [rsp + 0x18], rcx
mov rcx, qword [rsp + 0x98]
mov qword [rsp + 0x20], rcx
lea rcx, [0x006d1a75]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], 0xd
call fcn.00442520
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x190]
mov qword [rdx + 0x48], rcx
mov ecx, dword [0x008b4340]
lea rbx, [rdx + 0x40]
test ecx, ecx
jne 0x47607f
mov qword [rdx + 0x40], rax
mov rax, qword [0x006f0b20]
mov rcx, qword [0x006f0b30]
mov ebx, dword [0x006f0b28]
mov qword [rsp + 0x218], rax
mov dword [rsp + 0x220], ebx
mov qword [rsp + 0x228], rcx
lea rax, [0x007e5300]
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x238], rdx
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
mov qword [rsp], rbx
mov qword [rsp + 8], rax
call fcn.00410240
mov rdx, qword [rsp + 0x190]
jmp 0x47602d
mov qword [rsp], rdx
mov rcx, qword [rsp + 0x1a0]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x475fb4
mov qword [rsp], rdx
mov rcx, qword [rsp + 0x128]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x475f8a
mov qword [rsp], rdx
mov rcx, qword [rsp + 0x1f8]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x475f63
mov qword [rsp], rax
mov rcx, qword [rsp + 0x1e8]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x475f39
mov qword [rsp], rbx
mov qword [rsp + 8], rsi
call fcn.00478ab0
mov rax, qword [rsp + 0x10]
movzx ecx, byte [rsp + 0x18]
test cl, cl
je 0x4761c6
mov rcx, qword [rsp + 0x90]
cmp rax, rcx
ja 0x4761bf
sub rcx, rax
lea rdx, [rcx - 1]
sar rdx, 0x3f
xor rdx, 0xffffffffffffffff
and rdx, rax
mov r9, qword [rsp + 0x130]
lea rbx, [rdx + r9]
mov rdx, qword [rsp + 0x128]
mov r8, rax
mov rsi, rcx
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rdi, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x118]
mov rax, qword [rsp + 0x70]
jmp 0x475ca3
call fcn.00429450
ud2
mov rdi, qword [0x00897600]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x128]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x130]
mov rsi, qword [rsp + 0x90]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
add r8, 0xffffffffffffffea
cmp r8, 9
ja 0x4767ae
cmp rcx, 0x16
jne 0x476795
cmp rsi, 1
jl 0x4762b3
movzx r8d, byte [rbx]
cmp r8b, 0x5a
jne 0x4762b3
lea rcx, [rsi - 2]
sar rcx, 0x3f
xor rcx, 0xffffffffffffffff
and rcx, 1
add rbx, rcx
dec rsi
mov rcx, qword [0x0088e7d0]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
jmp 0x475ca3
cmp rcx, 0x19
jne 0x4764ea
cmp rsi, 6
jge 0x476310
mov rdi, qword [0x00897600]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
movzx ecx, byte [rbx + 3]
cmp cl, 0x3a
je 0x476366
mov rdi, qword [0x00897600]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
lea rcx, [rsi - 7]
sar rcx, 0x3f
xor rcx, 0xffffffffffffffff
and rcx, 6
add rcx, rbx
lea rdi, [rbx + 1]
lea r8, [rbx + 4]
add rsi, 0xfffffffffffffffa
lea r9, [0x006cf2e9]
mov qword [rsp + 0x160], r8
mov qword [rsp + 0x108], rsi
mov qword [rsp + 0x1a0], rcx
mov qword [rsp + 0x138], r9
mov qword [rsp], rdi
mov qword [rsp + 8], 2
call fcn.00472a90
mov rax, qword [rsp + 0x10]
mov qword [rsp + 0xe8], rax
mov rcx, qword [rsp + 0x18]
test rcx, rcx
je 0x4764b9
xor edx, edx
mov qword [rsp + 0xd0], rdx
test rcx, rcx
je 0x476480
xor ebx, ebx
imul rax, rax, 0x3c
add rax, rdx
imul rax, rax, 0x3c
add rax, rbx
mov rdx, qword [rsp + 0x130]
movzx edx, byte [rdx]
cmp dl, 0x2b
jne 0x47646d
mov rdx, qword [rsp + 0x128]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x1a0]
mov rsi, qword [rsp + 0x108]
movzx r10d, byte [rsp + 0x5e]
mov r11, rax
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rdi, rcx
mov rcx, qword [rsp + 0x118]
mov rax, qword [rsp + 0x70]
jmp 0x475ca3
cmp dl, 0x2d
jne 0x476477
neg rax
jmp 0x47640c
mov rcx, qword [0x00897600]
jmp 0x47640c
mov rcx, qword [rsp + 0x138]
mov qword [rsp], rcx
mov qword [rsp + 8], 2
call fcn.00472a90
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rax, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0xd0]
jmp 0x4763ee
mov rcx, qword [rsp + 0x160]
mov qword [rsp], rcx
mov qword [rsp + 8], 2
call fcn.00472a90
mov rdx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rax, qword [rsp + 0xe8]
jmp 0x4763db
cmp rcx, 0x1e
je 0x4762bd
cmp rcx, 0x1d
jne 0x476588
cmp rsi, 3
jge 0x476551
mov rdi, qword [0x00897600]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
lea rcx, [rsi - 4]
sar rcx, 0x3f
xor rcx, 0xffffffffffffffff
and rcx, 3
add rcx, rbx
lea rdi, [rbx + 1]
add rsi, 0xfffffffffffffffd
lea r8, [0x006cf2e9]
lea r9, [0x006cf2e9]
mov r10, r8
mov r8, r9
mov r9, r10
jmp 0x47638c
cmp rcx, 0x18
je 0x4764fe
cmp rcx, 0x1a
jne 0x476681
cmp rsi, 9
jge 0x4765ef
mov rdi, qword [0x00897600]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
movzx ecx, byte [rbx + 3]
cmp cl, 0x3a
je 0x476645
mov rdi, qword [0x00897600]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
movzx ecx, byte [rbx + 6]
cmp cl, 0x3a
je 0x476650
jmp 0x4765f8
lea rcx, [rsi - 0xa]
sar rcx, 0x3f
xor rcx, 0xffffffffffffffff
and rcx, 9
add rcx, rbx
lea rdi, [rbx + 1]
lea r8, [rbx + 4]
lea r9, [rbx + 7]
add rsi, 0xfffffffffffffff7
mov r10, r8
mov r8, r9
mov r9, r10
jmp 0x47657a
cmp rcx, 0x1f
je 0x47659c
cmp rcx, 0x17
jne 0x47670c
cmp rsi, 7
jge 0x4766e4
mov rdi, qword [0x00897600]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
lea rcx, [rsi - 8]
sar rcx, 0x3f
xor rcx, 0xffffffffffffffff
and rcx, 7
add rcx, rbx
lea rdi, [rbx + 1]
lea r8, [rbx + 3]
lea r9, [rbx + 5]
add rsi, 0xfffffffffffffff9
jmp 0x476673
cmp rcx, 0x1c
je 0x476691
cmp rsi, 5
jge 0x476769
mov rdi, qword [0x00897600]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
lea r10, [rsi - 6]
sar r10, 0x3f
xor r10, 0xffffffffffffffff
and r10, 5
lea rcx, [r10 + rbx]
lea rdi, [rbx + 1]
lea r8, [rbx + 3]
add rsi, 0xfffffffffffffffb
lea r9, [0x006cf2e9]
jmp 0x476673
cmp rcx, 0x18
je 0x476248
cmp rcx, 0x19
jne 0x4762b3
jmp 0x476248
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
cmp r8, 0x20
jne 0x476942
sar rcx, 0x10
inc rcx
mov qword [rsp + 0xc0], rcx
cmp rsi, rcx
jge 0x47685f
mov rdi, qword [0x00897600]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
mov qword [rsp], rbx
mov qword [rsp + 8], rsi
mov qword [rsp + 0x10], rcx
call fcn.00478e30
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0x90]
cmp rsi, rdi
ja 0x47693b
sub rdi, rsi
lea r8, [rdi - 1]
sar r8, 0x3f
xor r8, 0xffffffffffffffff
and rsi, r8
mov r8, qword [rsp + 0x130]
add rsi, r8
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov qword [rsp + 0x148], rcx
mov qword [rsp + 0x98], rdx
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x118]
mov r8, rbx
mov rbx, rsi
mov rsi, rdi
mov rdi, r8
mov r8, qword [rsp + 0xc8]
jmp 0x475ca3
call fcn.00429450
ud2
cmp rsi, 2
jge 0x47698e
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
movzx ecx, byte [rbx]
cmp cl, 0x2e
jne 0x476948
movzx ecx, byte [rbx + 1]
cmp cl, 0x30
jb 0x476948
cmp cl, 0x39
ja 0x476948
xor ecx, ecx
cmp rcx, 9
jge 0x4769d6
lea rdi, [rcx + 1]
cmp rdi, rsi
jge 0x4769d6
jae 0x476ac4
movzx r8d, byte [rbx + rcx + 1]
cmp r8b, 0x30
jb 0x4769d6
cmp r8b, 0x39
ja 0x4769d6
mov rcx, rdi
cmp rcx, 9
jl 0x4769ac
mov qword [rsp], rbx
mov qword [rsp + 8], rsi
inc rcx
mov qword [rsp + 0x108], rcx
mov qword [rsp + 0x10], rcx
call fcn.00478e30
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x108]
mov rdi, qword [rsp + 0x90]
cmp rsi, rdi
ja 0x476abd
sub rdi, rsi
lea r8, [rdi - 1]
sar r8, 0x3f
xor r8, 0xffffffffffffffff
and rsi, r8
mov r8, qword [rsp + 0x130]
add rsi, r8
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov qword [rsp + 0x148], rcx
mov qword [rsp + 0x98], rdx
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x118]
mov r8, rbx
mov rbx, rsi
mov rsi, rdi
mov rdi, r8
mov r8, qword [rsp + 0xc8]
jmp 0x475ca3
call fcn.00429450
ud2
call fcn.004293e0
ud2
cmp r8, 0x102
jg 0x476c15
cmp r8, 0x101
je 0x476b84
cmp r8, 0x102
je 0x476af3
jmp 0x4767ae
mov rcx, qword [0x0088fd60]
mov rdi, qword [0x0088fd68]
mov r8, qword [0x0088fd70]
mov qword [rsp], rcx
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], r8
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
call fcn.00472630
mov r13, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x128]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
mov rcx, qword [0x0088fd20]
mov rdi, qword [0x0088fd28]
mov r8, qword [0x0088fd30]
mov qword [rsp], rcx
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], r8
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
call fcn.00472630
mov r13, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x128]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
lea r9, [r8 - 0x103]
cmp r9, 1
jbe 0x476d69
cmp r8, 0x105
je 0x476cd5
cmp r8, 0x106
je 0x476c41
jmp 0x4767ae
mov rcx, qword [0x0088fd40]
mov rdi, qword [0x0088fd48]
mov r8, qword [0x0088fd50]
mov qword [rsp], rcx
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], r8
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
call fcn.00472630
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x128]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
mov rcx, qword [0x0088fd00]
mov rdi, qword [0x0088fd08]
mov r8, qword [0x0088fd10]
mov qword [rsp], rcx
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], r8
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
call fcn.00472630
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x128]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
mov qword [rsp], rbx
mov qword [rsp + 8], rsi
cmp rcx, 0x104
sete cl
mov byte [rsp + 0x10], cl
call fcn.00475610
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
lea rsi, [rax - 1]
cmp rsi, 0xb
jbe 0x476e18
lea rsi, [0x006cfb02]
mov rdi, 5
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, rax
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov qword [rsp + 0x148], rsi
mov qword [rsp + 0x98], rdi
mov rax, qword [rsp + 0x70]
mov rsi, rdx
mov rdi, rbx
mov rdx, qword [rsp + 0x128]
mov rbx, rcx
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
mov rsi, qword [rsp + 0x148]
mov rdi, qword [rsp + 0x98]
jmp 0x476db1
cmp r8, 0x20a
jg 0x477226
cmp r8, 0x111
jg 0x47703d
lea r9, [r8 - 0x107]
cmp r9, 2
jbe 0x476f54
cmp r8, 0x111
jne 0x4767ae
cmp rsi, 4
jge 0x476eb5
mov rdi, qword [0x00897600]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
movzx ecx, byte [rbx]
add ecx, 0xffffffd0
cmp cl, 9
jbe 0x476ec2
jmp 0x476e68
mov qword [rsp], rbx
mov qword [rsp + 8], 4
call fcn.00472a90
mov rax, qword [rsp + 0x90]
lea rcx, [rax - 5]
sar rcx, 0x3f
xor rcx, 0xffffffffffffffff
and rcx, 4
mov rdx, qword [rsp + 0x130]
lea rbx, [rcx + rdx]
lea rsi, [rax - 4]
mov r14, qword [rsp + 0x10]
mov rdi, qword [rsp + 0x18]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x128]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
cmp rcx, 0x108
jne 0x476f81
test rsi, rsi
jle 0x476f81
movzx edi, byte [rbx]
cmp dil, 0x20
jne 0x476f81
lea rdi, [rsi - 2]
sar rdi, 0x3f
xor rdi, 0xffffffffffffffff
and rdi, 1
add rbx, rdi
dec rsi
mov qword [rsp], rbx
mov qword [rsp + 8], rsi
cmp rcx, 0x109
sete cl
mov byte [rsp + 0x10], cl
call fcn.00475610
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
test rax, rax
jge 0x47702b
lea rsi, [0x006cf560]
mov rdi, 3
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, rax
mov qword [rsp + 0x148], rsi
mov qword [rsp + 0x98], rdi
mov rax, qword [rsp + 0x70]
mov rsi, rdx
mov rdi, rbx
mov rdx, qword [rsp + 0x128]
mov rbx, rcx
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
mov rsi, qword [rsp + 0x148]
mov rdi, qword [rsp + 0x98]
jmp 0x476fc4
cmp r8, 0x112
jne 0x477150
cmp rsi, 2
jge 0x47709d
mov rdi, qword [0x00897600]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
mov qword [rsp], rbx
mov qword [rsp + 8], 2
call fcn.00472a90
mov rax, qword [rsp + 0x90]
lea rcx, [rax - 3]
sar rcx, 0x3f
xor rcx, 0xffffffffffffffff
and rcx, 2
mov rdx, qword [rsp + 0x130]
add rcx, rdx
add rax, 0xfffffffffffffffe
mov rdx, qword [rsp + 0x10]
mov rbx, qword [rsp + 0x18]
cmp rdx, 0x45
jl 0x477147
add rdx, 0x76c
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
mov rsi, rax
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, rdx
mov r15, qword [rsp + 0xf8]
mov rdi, rbx
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x128]
mov rbx, rcx
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
add rdx, 0x7d0
jmp 0x4770ed
cmp r8, 0x20a
je 0x47715e
jmp 0x4767ae
mov qword [rsp], rbx
mov qword [rsp + 8], rsi
mov byte [rsp + 0x10], 0
call fcn.00475610
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
cmp rax, 0x18
jb 0x477211
lea rsi, [0x006cf821]
mov rdi, 4
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0x148], rsi
mov qword [rsp + 0x98], rdi
mov rax, qword [rsp + 0x70]
mov rsi, rdx
mov rdi, rbx
mov rdx, qword [rsp + 0x128]
mov rbx, rcx
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
mov rsi, qword [rsp + 0x148]
mov rdi, qword [rsp + 0x98]
jmp 0x47719d
cmp r8, 0x20e
jg 0x4773f8
lea r9, [r8 - 0x20b]
cmp r9, 1
jbe 0x477327
add r8, 0xfffffffffffffdf3
cmp r8, 1
jbe 0x477256
jmp 0x4767ae
mov qword [rsp], rbx
mov qword [rsp + 8], rsi
cmp rcx, 0x20e
sete cl
mov byte [rsp + 0x10], cl
call fcn.00475610
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
cmp rax, 0x3c
jb 0x477312
mov rsi, 6
lea rdi, [0x006cfde0]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x148], rdi
mov qword [rsp + 0x98], rsi
mov rax, qword [rsp + 0x70]
mov rsi, rdx
mov rdi, rbx
mov rdx, qword [rsp + 0x128]
mov rbx, rcx
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
mov rsi, qword [rsp + 0x98]
mov rdi, qword [rsp + 0x148]
jmp 0x47729e
mov qword [rsp], rbx
mov qword [rsp + 8], rsi
cmp rcx, 0x20c
sete cl
mov byte [rsp + 0x10], cl
call fcn.00475610
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
cmp rax, 0xc
jbe 0x4773e3
lea rsi, [0x006cf821]
mov rdi, 4
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0x148], rsi
mov qword [rsp + 0x98], rdi
mov rax, qword [rsp + 0x70]
mov rsi, rdx
mov rdi, rbx
mov rdx, qword [rsp + 0x128]
mov rbx, rcx
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
mov rsi, qword [rsp + 0x148]
mov rdi, qword [rsp + 0x98]
jmp 0x47736f
lea r9, [r8 - 0x20f]
cmp r9, 1
jbe 0x47761d
cmp r8, 0x213
jne 0x477513
cmp rsi, 2
jge 0x477469
mov rdi, qword [0x00897600]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
lea rcx, [rsi - 3]
sar rcx, 0x3f
xor rcx, 0xffffffffffffffff
and rcx, 2
add rcx, rbx
add rsi, 0xfffffffffffffffe
movzx r8d, byte [rbx]
cmp r8b, 0x41
jne 0x4774e3
movzx r9d, byte [rbx + 1]
cmp r9b, 0x4d
jne 0x4774e3
movzx ebx, byte [rsp + 0x5e]
mov r8d, 1
mov r9, qword [rsp + 0x158]
mov r10d, ebx
mov r11, qword [rsp + 0xa8]
mov r12d, r8d
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov r8, qword [rsp + 0xc8]
mov rbx, rcx
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
cmp r8b, 0x50
jne 0x4774ff
movzx ebx, byte [rbx + 1]
cmp bl, 0x4d
jne 0x4774ff
mov ebx, 1
movzx r8d, byte [rsp + 0x5f]
jmp 0x4774a0
mov rdi, qword [0x00897600]
movzx ebx, byte [rsp + 0x5e]
movzx r8d, byte [rsp + 0x5f]
jmp 0x4774a0
cmp r8, 0x214
jne 0x4767ae
cmp rsi, 2
jge 0x477573
mov rdi, qword [0x00897600]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
lea rcx, [rsi - 3]
sar rcx, 0x3f
xor rcx, 0xffffffffffffffff
and rcx, 2
add rcx, rbx
add rsi, 0xfffffffffffffffe
movzx r8d, byte [rbx]
cmp r8b, 0x61
jne 0x4775ed
movzx r9d, byte [rbx + 1]
cmp r9b, 0x6d
jne 0x4775ed
movzx ebx, byte [rsp + 0x5e]
mov r8d, 1
mov r9, qword [rsp + 0x158]
mov r10d, ebx
mov r11, qword [rsp + 0xa8]
mov r12d, r8d
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov r8, qword [rsp + 0xc8]
mov rbx, rcx
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
cmp r8b, 0x70
jne 0x477609
movzx ebx, byte [rbx + 1]
cmp bl, 0x6d
jne 0x477609
mov ebx, 1
movzx r8d, byte [rsp + 0x5f]
jmp 0x4775aa
mov rdi, qword [0x00897600]
movzx ebx, byte [rsp + 0x5e]
movzx r8d, byte [rsp + 0x5f]
jmp 0x4775aa
mov qword [rsp], rbx
mov qword [rsp + 8], rsi
cmp rcx, 0x210
sete cl
mov byte [rsp + 0x10], cl
call fcn.00475610
mov rax, qword [rsp + 0x18]
mov qword [rsp + 0x80], rax
mov rcx, qword [rsp + 0x20]
mov qword [rsp + 0x140], rcx
mov rdx, qword [rsp + 0x28]
mov qword [rsp + 0x88], rdx
mov rbx, qword [rsp + 0x30]
mov qword [rsp + 0x178], rbx
cmp rax, 0x3c
jb 0x47770b
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x128]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
mov rbx, rcx
mov rsi, qword [rsp + 0x88]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rdi, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x118]
lea rsi, [0x006cfe04]
mov qword [rsp + 0x148], rsi
mov rdi, 6
mov qword [rsp + 0x98], rdi
mov rsi, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x178]
jmp 0x475ca3
cmp rdx, 2
jl 0x47772b
movzx esi, byte [rcx]
cmp sil, 0x2e
jne 0x47772b
movzx esi, byte [rcx + 1]
add esi, 0xffffffd0
cmp sil, 9
jbe 0x4777b7
mov rsi, qword [rsp + 0x148]
mov rdi, qword [rsp + 0x98]
mov r8, qword [rsp + 0xb8]
mov rax, qword [rsp + 0x70]
mov r9, qword [rsp + 0x158]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov qword [rsp + 0x148], rsi
mov qword [rsp + 0x98], rdi
mov qword [rsp + 0xb8], r8
mov r8, qword [rsp + 0xc8]
mov rsi, rdx
mov rdi, rbx
mov rdx, qword [rsp + 0x128]
mov rbx, rcx
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
mov rsi, qword [rsp + 0x120]
mov qword [rsp], rsi
mov rdi, qword [rsp + 0x68]
mov qword [rsp + 8], rdi
call fcn.00471430
movzx eax, word [rsp + 0x20]
cmp rax, 0x20
jne 0x477848
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x128]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x140]
mov rsi, qword [rsp + 0x88]
movzx r10d, byte [rsp + 0x5e]
mov r11, qword [rsp + 0xa8]
movzx r12d, byte [rsp + 0x5f]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0xf8]
mov rdi, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x118]
jmp 0x475ca3
cmp rax, 0x21
je 0x4777dd
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x140]
mov rdx, 2
cmp rdx, rax
jge 0x477882
movzx ebx, byte [rcx + rdx]
add ebx, 0xffffffd0
cmp bl, 9
ja 0x477909
inc rdx
cmp rdx, rax
jl 0x47786a
mov qword [rsp + 0xe0], rdx
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rdx
call fcn.00478e30
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0x88]
cmp rsi, rdi
ja 0x477902
sub rdi, rsi
lea r9, [rdi - 1]
sar r9, 0x3f
xor r9, 0xffffffffffffffff
and r9, rsi
mov r10, qword [rsp + 0x140]
add r9, r10
mov rsi, rcx
mov r8, rax
mov rax, qword [rsp + 0x80]
mov rcx, r9
mov r10, rdx
mov rdx, rdi
mov rdi, r10
jmp 0x477743
call fcn.00429450
ud2
mov qword [rsp + 0xe0], rdx
jmp 0x47788a
test rsi, rsi
jne 0x4786b1
movzx ecx, byte [rsp + 0x5e]
test cl, cl
je 0x4786a7
mov rcx, qword [rsp + 0xf0]
cmp rcx, 0xc
jge 0x478689
add rcx, 0xc
mov rdx, qword [rsp + 0xf8]
cmp rdx, 1
jge 0x477b26
lea rax, [0x006aea60]
mov qword [rsp], rax
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0x190], rax
mov rcx, qword [rsp + 0x1f0]
mov qword [rax + 8], rcx
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x477b03
mov rcx, qword [rsp + 0x1e8]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x200]
mov qword [rax + 0x18], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x10]
test ecx, ecx
jne 0x477ae0
mov rcx, qword [rsp + 0x1f8]
mov qword [rax + 0x10], rcx
mov qword [rax + 0x28], 0
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x20]
test ecx, ecx
jne 0x477ac1
mov qword [rax + 0x20], 0
mov rcx, qword [rsp + 0x90]
mov qword [rax + 0x38], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x30]
test ecx, ecx
jne 0x477a9e
mov rcx, qword [rsp + 0x130]
mov qword [rax + 0x30], rcx
mov qword [rax + 0x48], 0x12
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x40]
test ecx, ecx
jne 0x477a7f
lea rcx, [0x006d336c]
mov qword [rax + 0x40], rcx
mov rcx, qword [0x006f0b70]
mov edx, dword [0x006f0b68]
mov rbx, qword [0x006f0b60]
mov qword [rsp + 0x218], rbx
mov dword [rsp + 0x220], edx
mov qword [rsp + 0x228], rcx
lea rcx, [0x007e5300]
mov qword [rsp + 0x230], rcx
mov qword [rsp + 0x238], rax
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
mov qword [rsp], rdx
lea rcx, [0x006d336c]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x477a2d
mov qword [rsp], rdx
mov rcx, qword [rsp + 0x130]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x477a0c
mov qword [rsp], rdx
mov qword [rsp + 8], 0
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x4779e2
mov qword [rsp], rdx
mov rcx, qword [rsp + 0x1f8]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x4779c0
mov qword [rsp], rax
mov rcx, qword [rsp + 0x1e8]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x477996
mov rdi, qword [rsp + 0x110]
cmp rdi, 2
jne 0x47867f
mov r8, qword [rsp + 0x60]
mov r9, r8
sar r8, 0x3f
mov r10, r8
and r8, 3
lea r11, [r8 + r9]
and r11, 3
sub r11, r8
test r11, r11
jne 0x478672
movabs rax, 0xa3d70a3d70a3d70b
mov r8, rdx
imul r9
add rdx, r9
mov r11, rdx
sar rdx, 6
sub rdx, r10
imul rdx, rdx, 0x64
mov r12, r9
sub r9, rdx
test r9, r9
je 0x478650
mov eax, 1
test al, al
je 0x47861f
mov rax, 0x1d
cmp r8, rax
jg 0x477954
mov rax, qword [rsp + 0x118]
test rax, rax
jne 0x47858e
mov rax, qword [rsp + 0xa8]
cmp rax, 0xffffffffffffffff
jne 0x47811a
mov rax, qword [rsp + 0xc8]
test rax, rax
je 0x478081
mov qword [rsp], r12
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], r8
mov qword [rsp + 0x18], rcx
mov rcx, qword [rsp + 0xd8]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0x30], rcx
mov rcx, qword [0x0088e7d0]
mov qword [rsp + 0x38], rcx
call fcn.0047aa30
mov rax, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x1c0], rdx
mov dword [rsp + 0x1c8], ecx
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0x210]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x158]
mov qword [rsp + 8], rcx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x10], rdx
mov rbx, qword [rsp + 0x1c0]
movabs rsi, 0xfffffff1886e0900
add rbx, rsi
mov qword [rsp + 0x18], rbx
call fcn.0047b580
mov rax, qword [rsp + 0x20]
movzx ecx, byte [rsp + 0x29]
test cl, cl
je 0x477d22
mov rcx, qword [rsp + 0x1c0]
sub rcx, rax
mov qword [rsp + 0x1c0], rcx
mov rax, qword [rsp + 0x210]
lea rcx, [0x00894160]
cmp rax, rcx
jne 0x477ccc
xor eax, eax
mov qword [rsp + 0x1d0], rax
mov ecx, dword [rsp + 0x1c8]
mov rdx, qword [rsp + 0x1c0]
mov qword [rsp + 0x218], rdx
mov dword [rsp + 0x220], ecx
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x230], 0
mov qword [rsp + 0x238], 0
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
mov rcx, qword [rsp + 0xc8]
cmp rcx, 3
jle 0x478074
mov rdx, qword [rsp + 0x158]
movzx ebx, byte [rdx]
cmp bl, 0x47
jne 0x477d5a
movzx ebx, byte [rdx + 1]
cmp bl, 0x4d
jne 0x477d5a
movzx ebx, byte [rdx + 2]
cmp bl, 0x54
je 0x47802e
mov qword [rsp + 0xb0], rax
lea rbx, [0x006b0a40]
mov qword [rsp], rbx
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0x170], rax
mov rcx, qword [rsp + 0xc8]
mov qword [rax + 8], rcx
mov edx, dword [0x008b4340]
test edx, edx
jne 0x477ffb
mov rdx, qword [rsp + 0x158]
mov qword [rax], rdx
lea rbx, [0x00673560]
mov qword [rsp], rbx
call fcn.0040f840
movzx eax, byte [0x006f0e78]
mov rcx, qword [rsp + 8]
mov qword [rsp + 0x188], rcx
mov rdx, qword [0x006f0e70]
mov rbx, qword [0x006f0e60]
mov rsi, qword [0x006f0e68]
mov qword [rcx + 8], rsi
mov qword [rcx + 0x10], rdx
mov byte [rcx + 0x18], al
mov eax, dword [0x008b4340]
test eax, eax
jne 0x477fe0
mov qword [rcx], rbx
mov rax, qword [rsp + 0xc8]
mov qword [rcx + 8], rax
mov eax, dword [0x008b4340]
test eax, eax
jne 0x477fbd
mov rax, qword [rsp + 0x158]
mov qword [rcx], rax
mov rax, qword [rsp + 0xb0]
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0x170]
mov qword [rax + 0x18], 1
mov qword [rax + 0x20], 1
mov edx, dword [0x008b4340]
lea rbx, [rax + 0x10]
test edx, edx
jne 0x477fa2
mov qword [rax + 0x10], rcx
lea rcx, [0x006735c0]
mov qword [rsp], rcx
call fcn.0040f840
movzx eax, byte [0x006f084a]
movzx ecx, byte [0x006f0849]
movzx edx, byte [0x006f0848]
mov rbx, qword [0x006f0840]
mov rsi, qword [rsp + 8]
mov qword [rsi], rbx
mov byte [rsi + 8], dl
mov byte [rsi + 9], cl
mov byte [rsi + 0xa], al
test byte [rsi], al
mov rax, qword [rsp + 0x170]
mov qword [rax + 0x30], 1
mov qword [rax + 0x38], 1
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x28]
test ecx, ecx
jne 0x477f87
mov qword [rax + 0x28], rsi
movabs rcx, 0x8000000000000000
mov qword [rax + 0x40], rcx
movabs rcx, 0x7fffffffffffffff
mov qword [rax + 0x48], rcx
mov rcx, qword [rax + 0x10]
mov rdx, qword [rax + 0x18]
test rdx, rdx
jbe 0x477f80
mov edx, dword [0x008b4340]
lea rbx, [rax + 0x50]
test edx, edx
jne 0x477f68
mov qword [rax + 0x50], rcx
lea rcx, [0x00894160]
cmp rax, rcx
jne 0x477f12
xor eax, eax
mov qword [rsp + 0x1d0], rax
mov ecx, dword [rsp + 0x1c8]
mov rdx, qword [rsp + 0x1c0]
mov qword [rsp + 0x218], rdx
mov dword [rsp + 0x220], ecx
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x230], 0
mov qword [rsp + 0x238], 0
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
mov qword [rsp], rbx
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x170]
jmp 0x477f04
call fcn.004293e0
ud2
mov qword [rsp], rdx
mov qword [rsp + 8], rsi
call fcn.00410240
mov rax, qword [rsp + 0x170]
jmp 0x477ec5
mov qword [rsp], rbx
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x170]
jmp 0x477e58
mov qword [rsp], rcx
mov rax, qword [rsp + 0x158]
mov qword [rsp + 8], rax
call fcn.00410240
mov rcx, qword [rsp + 0x188]
jmp 0x477e1e
mov qword [rsp], rcx
mov qword [rsp + 8], rbx
call fcn.00410240
mov rcx, qword [rsp + 0x188]
jmp 0x477df9
mov qword [rsp], rax
mov rdx, qword [rsp + 0x158]
mov qword [rsp + 8], rdx
call fcn.00410240
mov rax, qword [rsp + 0x170]
mov rcx, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0x158]
jmp 0x477da4
lea rax, [rcx - 4]
sar rax, 0x3f
xor rax, 0xffffffffffffffff
and rax, 3
add rax, rdx
mov qword [rsp], rax
lea rax, [rcx - 3]
mov qword [rsp + 8], rax
call fcn.00472a90
mov rax, qword [rsp + 0x10]
imul rax, rax, 0xe10
mov rcx, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0x158]
jmp 0x477d5a
mov rdx, qword [rsp + 0x158]
jmp 0x477d5a
mov qword [rsp], r12
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], r8
mov qword [rsp + 0x18], rcx
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x208]
mov qword [rsp + 0x38], rax
call fcn.0047aa30
mov rax, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x218], rdx
mov dword [rsp + 0x220], ecx
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x230], 0
mov qword [rsp + 0x238], 0
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
mov qword [rsp], r12
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], r8
mov qword [rsp + 0x18], rcx
mov rcx, qword [rsp + 0xd8]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0x30], rcx
mov rcx, qword [0x0088e7d0]
mov qword [rsp + 0x38], rcx
call fcn.0047aa30
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x40]
mov edx, dword [rsp + 0x48]
mov qword [rsp + 0x1a8], rcx
mov dword [rsp + 0x1b0], edx
mov qword [rsp + 0x1b8], rax
mov rax, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0xa8]
sub rax, rcx
mov qword [rsp + 0x1a8], rax
mov rax, qword [rsp + 0x210]
mov qword [rsp], rax
mov rdx, qword [rsp + 0x1a8]
movabs rbx, 0xfffffff1886e0900
add rdx, rbx
mov qword [rsp + 8], rdx
call fcn.0047b190
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x10]
mov rdx, qword [rsp + 0x18]
mov rbx, qword [rsp + 0xa8]
cmp rax, rbx
jne 0x478581
mov rax, qword [rsp + 0xc8]
test rax, rax
jne 0x478269
mov rax, qword [rsp + 0x210]
lea rcx, [0x00894160]
cmp rax, rcx
jne 0x478213
xor eax, eax
mov qword [rsp + 0x1b8], rax
mov ecx, dword [rsp + 0x1b0]
mov rdx, qword [rsp + 0x1a8]
mov qword [rsp + 0x218], rdx
mov dword [rsp + 0x220], ecx
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x230], 0
mov qword [rsp + 0x238], 0
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
cmp rdx, rax
je 0x47853f
lea rcx, [0x006b0a40]
mov qword [rsp], rcx
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0x168], rax
mov rcx, qword [rsp + 0xc8]
mov qword [rax + 8], rcx
mov edx, dword [0x008b4340]
test edx, edx
jne 0x47850c
mov rdx, qword [rsp + 0x158]
mov qword [rax], rdx
lea rbx, [0x00673560]
mov qword [rsp], rbx
call fcn.0040f840
movzx eax, byte [0x006f0e58]
mov rcx, qword [0x006f0e50]
mov rdx, qword [rsp + 8]
mov qword [rsp + 0x180], rdx
mov rbx, qword [0x006f0e40]
mov rsi, qword [0x006f0e48]
mov qword [rdx + 8], rsi
mov qword [rdx + 0x10], rcx
mov byte [rdx + 0x18], al
mov eax, dword [0x008b4340]
test eax, eax
jne 0x4784f1
mov qword [rdx], rbx
mov rax, qword [rsp + 0xc8]
mov qword [rdx + 8], rax
mov eax, dword [0x008b4340]
test eax, eax
jne 0x4784ce
mov rax, qword [rsp + 0x158]
mov qword [rdx], rax
mov rax, qword [rsp + 0xa8]
mov qword [rdx + 0x10], rax
mov rax, qword [rsp + 0x168]
mov qword [rax + 0x18], 1
mov qword [rax + 0x20], 1
mov ecx, dword [0x008b4340]
lea rbx, [rax + 0x10]
test ecx, ecx
jne 0x4784b3
mov qword [rax + 0x10], rdx
lea rcx, [0x006735c0]
mov qword [rsp], rcx
call fcn.0040f840
mov rax, qword [0x006f0830]
mov rcx, qword [rsp + 8]
movzx edx, byte [0x006f083a]
movzx ebx, byte [0x006f0839]
movzx esi, byte [0x006f0838]
mov qword [rcx], rax
mov byte [rcx + 8], sil
mov byte [rcx + 9], bl
mov byte [rcx + 0xa], dl
test byte [rcx], al
mov rax, qword [rsp + 0x168]
mov qword [rax + 0x30], 1
mov qword [rax + 0x38], 1
mov edx, dword [0x008b4340]
lea rbx, [rax + 0x28]
test edx, edx
jne 0x478498
mov qword [rax + 0x28], rcx
movabs rcx, 0x8000000000000000
mov qword [rax + 0x40], rcx
movabs rcx, 0x7fffffffffffffff
mov qword [rax + 0x48], rcx
mov rcx, qword [rax + 0x10]
mov rdx, qword [rax + 0x18]
test rdx, rdx
jbe 0x478491
mov edx, dword [0x008b4340]
lea rbx, [rax + 0x50]
test edx, edx
jne 0x478479
mov qword [rax + 0x50], rcx
lea rcx, [0x00894160]
cmp rax, rcx
jne 0x478423
xor eax, eax
mov qword [rsp + 0x1b8], rax
mov ecx, dword [rsp + 0x1b0]
mov rdx, qword [rsp + 0x1a8]
mov qword [rsp + 0x218], rdx
mov dword [rsp + 0x220], ecx
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x230], 0
mov qword [rsp + 0x238], 0
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
mov qword [rsp], rbx
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x168]
jmp 0x478415
call fcn.004293e0
ud2
mov qword [rsp], rbx
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x168]
jmp 0x4783d6
mov qword [rsp], rbx
mov qword [rsp + 8], rdx
call fcn.00410240
mov rax, qword [rsp + 0x168]
jmp 0x478368
mov qword [rsp], rdx
mov rax, qword [rsp + 0x158]
mov qword [rsp + 8], rax
call fcn.00410240
mov rdx, qword [rsp + 0x180]
jmp 0x47832e
mov qword [rsp], rdx
mov qword [rsp + 8], rbx
call fcn.00410240
mov rdx, qword [rsp + 0x180]
jmp 0x478309
mov qword [rsp], rax
mov rdx, qword [rsp + 0x158]
mov qword [rsp + 8], rdx
call fcn.00410240
mov rax, qword [rsp + 0x168]
mov rcx, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0x158]
jmp 0x4782b4
mov qword [rsp], rcx
mov qword [rsp + 8], rdx
mov rcx, qword [rsp + 0x158]
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], rax
call fcn.00454360
movzx eax, byte [rsp + 0x20]
test al, al
jne 0x4781fd
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xa8]
jmp 0x478272
mov rax, qword [rsp + 0xc8]
jmp 0x478272
mov qword [rsp], r12
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], r8
mov qword [rsp + 0x18], rcx
mov rcx, qword [rsp + 0xd8]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
call fcn.0047aa30
mov rax, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x218], rdx
mov dword [rsp + 0x220], ecx
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x230], 0
mov qword [rsp + 0x238], 0
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
cmp rdi, 0xd
jae 0x478649
lea rax, [0x007e7fc0]
mov edx, dword [rax + rdi*4]
lea r9, [rdi - 1]
cmp r9, 0xd
jae 0x478649
mov r9d, dword [rax + rdi*4 - 4]
sub edx, r9d
movsxd rax, edx
jmp 0x477ba3
call fcn.004293e0
ud2
sar r11, 8
sub r11, r10
imul r11, r11, 0x190
mov rdx, r12
sub r12, r11
test r12, r12
sete al
mov r12, rdx
jmp 0x477b94
mov r8, rdx
mov r12, r9
xor eax, eax
jmp 0x477b94
mov r8, rdx
mov r12, qword [rsp + 0x60]
jmp 0x47861f
movzx edx, byte [rsp + 0x5f]
test dl, dl
je 0x4786a2
cmp rcx, 0xc
jne 0x4786a2
xor eax, eax
mov rcx, rax
jmp 0x477942
mov rax, rcx
jmp 0x47869a
mov rcx, qword [rsp + 0xf0]
jmp 0x478689
lea rax, [0x006aea60]
mov qword [rsp], rax
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0x190], rax
mov rcx, qword [rsp + 0x1f0]
mov qword [rax + 8], rcx
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x47889c
mov rcx, qword [rsp + 0x1e8]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x200]
mov qword [rax + 0x18], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x10]
test ecx, ecx
jne 0x478879
mov rcx, qword [rsp + 0x1f8]
mov qword [rax + 0x10], rcx
mov qword [rax + 0x28], 0
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x20]
test ecx, ecx
jne 0x47885a
mov qword [rax + 0x20], 0
mov rcx, qword [rsp + 0x90]
mov qword [rax + 0x38], rcx
mov edx, dword [0x008b4340]
lea rbx, [rax + 0x30]
test edx, edx
jne 0x478827
mov rdx, qword [rsp + 0x130]
mov qword [rax + 0x30], rdx
mov qword [rsp], 0
lea rbx, [0x006d1f50]
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], 0xe
mov qword [rsp + 0x18], rdx
mov qword [rsp + 0x20], rcx
call fcn.004424a0
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x190]
mov qword [rdx + 0x48], rcx
mov ecx, dword [0x008b4340]
lea rbx, [rdx + 0x40]
test ecx, ecx
jne 0x47880f
mov qword [rdx + 0x40], rax
mov rax, qword [0x006f0b10]
mov ecx, dword [0x006f0b08]
mov rbx, qword [0x006f0b00]
mov qword [rsp + 0x218], rbx
mov dword [rsp + 0x220], ecx
mov qword [rsp + 0x228], rax
lea rax, [0x007e5300]
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x238], rdx
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
mov qword [rsp], rbx
mov qword [rsp + 8], rax
call fcn.00410240
mov rdx, qword [rsp + 0x190]
jmp 0x4787bd
mov qword [rsp], rbx
mov rdx, qword [rsp + 0x130]
mov qword [rsp + 8], rdx
call fcn.00410240
mov rax, qword [rsp + 0x190]
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x130]
jmp 0x478769
mov qword [rsp], rdx
mov qword [rsp + 8], 0
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x47873f
mov qword [rsp], rdx
mov rcx, qword [rsp + 0x1f8]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x47871d
mov qword [rsp], rax
mov rcx, qword [rsp + 0x1e8]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x4786f3
lea rax, [0x006aea60]
mov qword [rsp], rax
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0x190], rax
mov rcx, qword [rsp + 0x1f0]
mov qword [rax + 8], rcx
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x478a74
mov rcx, qword [rsp + 0x1e8]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x200]
mov qword [rax + 0x18], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x10]
test ecx, ecx
jne 0x478a51
mov rcx, qword [rsp + 0x1f8]
mov qword [rax + 0x10], rcx
mov rcx, qword [rsp + 0xa0]
mov qword [rax + 0x28], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x20]
test ecx, ecx
jne 0x478a2e
mov rcx, qword [rsp + 0x150]
mov qword [rax + 0x20], rcx
mov rcx, qword [rsp + 0x90]
mov qword [rax + 0x38], rcx
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x30]
test ecx, ecx
jne 0x478a0b
mov rcx, qword [rsp + 0x130]
mov qword [rax + 0x30], rcx
mov qword [rax + 0x48], 0
mov ecx, dword [0x008b4340]
lea rdx, [rax + 0x40]
test ecx, ecx
jne 0x4789ef
mov qword [rax + 0x40], 0
mov rcx, qword [0x006f0af0]
mov edx, dword [0x006f0ae8]
mov rbx, qword [0x006f0ae0]
mov qword [rsp + 0x218], rbx
mov dword [rsp + 0x220], edx
mov qword [rsp + 0x228], rcx
lea rcx, [0x007e5300]
mov qword [rsp + 0x230], rcx
mov qword [rsp + 0x238], rax
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
mov qword [rsp], rdx
mov qword [rsp + 8], 0
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x47899d
mov qword [rsp], rdx
mov rcx, qword [rsp + 0x130]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x47897f
mov qword [rsp], rdx
mov rcx, qword [rsp + 0x150]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x478955
mov qword [rsp], rdx
mov rcx, qword [rsp + 0x1f8]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x47892b
mov qword [rsp], rax
mov rcx, qword [rsp + 0x1e8]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x190]
jmp 0x478901
call fcn.00429450
ud2
call fcn.00452210
jmp fcn.004759d0