Function at 0x45c621
Capabilities:
Inspect section memory permissions

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0xd0
mov dword [rbp + 0x10], ecx
mov eax, edx
mov byte [rbp + 0x18], al
mov rax, qword [0x005d2ab0]
mov eax, dword [rax]
test eax, eax
jne 0x45ebac
mov eax, dword [0x00587378]
mov dword [0x00c5a3f4], eax
mov dword [0x00587378], 1
call fcn.00471eb3
mov dword [0x00c5a3f8], eax
call fcn.00471ebc
mov ecx, eax
call fcn.00471d29
call fcn.00471ebc
mov r8d, 0
mov edx, 0
mov ecx, eax
call fcn.00471621
mov dword [0x00c5a3fc], eax
mov eax, dword [0x00c5a3fc]
cmp eax, 0xffffffff
jne 0x45c6a4
mov ecx, 0x204
call fcn.0044495a
call fcn.00471ebc
mov r8d, 0
mov edx, 0
mov ecx, eax
call fcn.00471621
mov dword [0x00c5a400], eax
mov eax, dword [0x00c5a400]
cmp eax, 0xffffffff
jne 0x45c6d6
mov ecx, 0x205
call fcn.0044495a
mov rax, qword [0x00723a70]
movzx eax, word [rax + 0x38]
cwde
mov dword [0x00c5a408], eax
mov rax, qword [0x00723a70]
movzx eax, word [rax + 0x3a]
cwde
mov dword [0x00c5a40c], eax
mov rax, qword [0x00723a70]
movzx eax, byte [rax + 0x5d]
movzx eax, al
mov dword [0x00c5a404], eax
mov rax, qword [0x005d2b60]
mov eax, dword [rax]
mov dword [rbp - 0x5c], eax
mov dword [0x00c5a410], 0
mov rax, qword [0x005d2b40]
mov eax, dword [rax + 4]
and eax, 0x40000000
test eax, eax
je 0x45c762
mov rax, qword [0x005d2b40]
mov eax, dword [rax + 4]
and eax, 0x200
test eax, eax
je 0x45c762
mov rax, qword [0x005d2b40]
mov dword [rax + 4], 0xfffffe00
mov dword [0x00c5a410], 1
mov rax, qword [0x00723a70]
movzx eax, byte [rax + 0x3c]
movzx eax, al
mov dword [0x00c57ec8], eax
mov rax, qword [0x00723a70]
mov byte [rax + 0x3c], 1
mov dword [rbp - 0x18], 0
mov edx, 0
mov ecx, 0
call fcn.004463c2
mov qword [rbp - 0x68], rax
mov edx, 0
mov ecx, 0
call fcn.004463c2
mov qword [rbp - 0x70], rax
mov edx, 0
mov ecx, 0
call fcn.004463c2
mov qword [rbp - 0x78], rax
mov edx, 0
mov ecx, 1
call fcn.004463c2
mov qword [rbp - 0x80], rax
mov dword [rbp - 4], 1
mov eax, dword [rbp - 4]
cmp eax, dword [rbp + 0x10]
jg 0x45c813
mov edx, 0
mov ecx, 0
call fcn.004463c2
mov rcx, rax
mov eax, dword [rbp - 4]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov qword [rdx + rax], rcx
add dword [rbp - 4], 1
jmp 0x45c7db
mov dword [rbp - 4], 1
mov eax, dword [rbp - 4]
cmp eax, dword [rbp + 0x10]
jg 0x45c903
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 4]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x40000000
test eax, eax
je 0x45c8a8
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 4]
cdqe
mov rax, qword [rdx + rax*8]
movzx eax, byte [rax + 0x28]
test al, al
je 0x45c891
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 4]
cdqe
mov rax, qword [rdx + rax*8]
mov eax, dword [rax + 8]
movsxd rdx, eax
mov rcx, qword [0x005d2b30]
mov eax, dword [rbp - 4]
cdqe
mov rax, qword [rcx + rax*8]
mov rax, qword [rax]
mov r8, rdx
mov edx, 0x20
mov rcx, rax
call sub.msvcrt.dll_memset
jmp 0x45c8a8
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 4]
cdqe
mov rax, qword [rdx + rax*8]
mov dword [rax + 8], 0
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 4]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1000000
test eax, eax
jne 0x45c8fa
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 4]
cdqe
mov eax, dword [rdx + rax*4]
sar eax, 3
cdqe
and eax, 0x3f
mov rcx, rax
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 4]
cdqe
mov rax, qword [rdx + rax*8]
mov r8, rcx
mov edx, 0
mov rcx, rax
call sub.msvcrt.dll_memset
add dword [rbp - 4], 1
jmp 0x45c81a
nop
mov dword [rbp - 0x24], 0
mov dword [rbp - 0x1c], 1
mov dword [rbp - 4], 0
mov dword [rbp - 8], 0
mov rax, qword [0x00c576c8]
mov dword [rax + 8], 0
mov dword [rbp - 0x20], 1
mov rax, qword [rbp - 0x68]
mov eax, dword [rax + 8]
cmp dword [rbp - 4], eax
jge 0x45ca7c
mov rax, qword [rbp - 0x68]
mov rdx, qword [rax]
mov eax, dword [rbp - 4]
cdqe
add rax, rdx
movzx eax, byte [rax]
cmp al, 0x2c
jne 0x45c9b5
cmp dword [rbp - 8], 1
je 0x45c9b5
mov eax, dword [0x00c5a410]
test eax, eax
jne 0x45c9b5
mov dword [rbp - 8], 0
add dword [rbp - 0x1c], 1
mov eax, dword [rbp - 0x1c]
cmp eax, dword [rbp + 0x10]
jle 0x45c98a
mov dword [rbp - 0x24], 1
jmp 0x45ca7d
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov dword [rax + 8], 0
mov dword [rbp - 0x20], 1
jmp 0x45ca73
mov rax, qword [rbp - 0x68]
mov rdx, qword [rax]
mov eax, dword [rbp - 4]
cdqe
add rax, rdx
movzx eax, byte [rax]
cmp al, 0x22
jne 0x45c9fd
cmp dword [rbp - 0x20], 0
je 0x45c9ee
mov eax, dword [0x00c5a410]
test eax, eax
jne 0x45c9ee
mov dword [rbp - 8], 1
mov dword [rbp - 0x20], 0
jmp 0x45ca73
cmp dword [rbp - 8], 1
jne 0x45c9fd
mov dword [rbp - 8], 2
jmp 0x45ca73
cmp dword [rbp - 8], 2
je 0x45ea0f
mov rax, qword [rbp - 0x68]
mov rdx, qword [rax]
mov eax, dword [rbp - 4]
cdqe
add rax, rdx
mov rdx, qword [rbp - 0x80]
mov rdx, qword [rdx]
movzx eax, byte [rax]
mov byte [rdx], al
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rdx, qword [rbp - 0x80]
mov rcx, rax
call fcn.00446eed
mov rcx, rax
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rdx, rcx
mov rcx, rax
call fcn.00446590
mov dword [rbp - 0x20], 0
add dword [rbp - 4], 1
jmp 0x45c935
nop
cmp dword [rbp - 0x24], 0
jne 0x45ea12
mov dword [rbp - 0x84], 0xffffffff
mov byte [rbp - 0x25], 1
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov eax, dword [rax + 8]
mov dword [rbp - 0x88], eax
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rax, qword [rax]
mov qword [rbp - 0x90], rax
mov byte [rbp - 0x26], 0
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x40000000
test eax, eax
jne 0x45cf60
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x20000000
test eax, eax
jne 0x45cf60
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x20
jg 0x45cf60
mov qword [rbp - 0x98], 0
cmp dword [rbp - 0x88], 0
jne 0x45cb54
mov dword [rbp - 0x84], 0x30
jmp 0x45cf05
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
mov dword [rbp - 0x10], eax
mov qword [rbp - 0x38], 1
mov eax, dword [rbp - 0x10]
mov ecx, eax
shl qword [rbp - 0x38], cl
sub qword [rbp - 0x38], 1
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rcx, rax
call fcn.0045c1c7
mov dword [rbp - 0xc], eax
cmp dword [rbp - 0xc], 0
setne al
test al, al
je 0x45cd54
mov rax, qword [0x00c57298]
mov qword [rbp - 0x58], rax
mov rax, qword [rbp - 0x58]
cmp rax, qword [rbp - 0x38]
jbe 0x45cbd1
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
cmp dword [rbp - 0xc], 1
jne 0x45cc4d
mov rax, qword [rbp - 0x38]
mov qword [rbp - 0x50], rax
mov dword [rbp - 4], 0
mov dword [rbp - 8], 1
cmp dword [rbp - 8], 0x10
jg 0x45cc10
mov rax, qword [rbp - 0x50]
and eax, 0xf
test rax, rax
je 0x45cc05
mov eax, dword [rbp - 8]
mov dword [rbp - 4], eax
shr qword [rbp - 0x50], 4
add dword [rbp - 8], 1
jmp 0x45cbed
mov eax, dword [rbp - 4]
add eax, 2
cmp dword [rbp - 0x88], eax
jle 0x45cc27
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
cmp dword [rbp - 0x88], 1
jne 0x45cc3a
mov dword [rbp - 0x84], 0x48
cmp dword [rbp - 0x88], 2
jne 0x45cc4d
mov dword [rbp - 0x84], 0x30
cmp dword [rbp - 0xc], 2
jne 0x45ccc9
mov rax, qword [rbp - 0x38]
mov qword [rbp - 0x50], rax
mov dword [rbp - 4], 0
mov dword [rbp - 8], 1
cmp dword [rbp - 8], 0x16
jg 0x45cc8c
mov rax, qword [rbp - 0x50]
and eax, 7
test rax, rax
je 0x45cc81
mov eax, dword [rbp - 8]
mov dword [rbp - 4], eax
shr qword [rbp - 0x50], 3
add dword [rbp - 8], 1
jmp 0x45cc69
mov eax, dword [rbp - 4]
add eax, 2
cmp dword [rbp - 0x88], eax
jle 0x45cca3
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
cmp dword [rbp - 0x88], 1
jne 0x45ccb6
mov dword [rbp - 0x84], 0x4f
cmp dword [rbp - 0x88], 2
jne 0x45ccc9
mov dword [rbp - 0x84], 0x30
cmp dword [rbp - 0xc], 3
jne 0x45cd44
mov rax, qword [rbp - 0x38]
mov qword [rbp - 0x50], rax
mov dword [rbp - 4], 0
mov dword [rbp - 8], 1
cmp dword [rbp - 8], 0x40
jg 0x45cd07
mov rax, qword [rbp - 0x50]
and eax, 1
test rax, rax
je 0x45ccfd
mov eax, dword [rbp - 8]
mov dword [rbp - 4], eax
shr qword [rbp - 0x50], 1
add dword [rbp - 8], 1
jmp 0x45cce5
mov eax, dword [rbp - 4]
add eax, 2
cmp dword [rbp - 0x88], eax
jle 0x45cd1e
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
cmp dword [rbp - 0x88], 1
jne 0x45cd31
mov dword [rbp - 0x84], 0x42
cmp dword [rbp - 0x88], 2
jne 0x45cd44
mov dword [rbp - 0x84], 0x30
mov rax, qword [rbp - 0x58]
mov qword [rbp - 0x98], rax
jmp 0x45cf05
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x10000000
test eax, eax
je 0x45cd76
mov qword [rbp - 0x40], 0
jmp 0x45cd86
shr qword [rbp - 0x38], 1
mov rax, qword [rbp - 0x38]
add rax, 1
mov qword [rbp - 0x40], rax
mov dword [rbp - 8], 0
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x10000000
test eax, eax
jne 0x45cddb
mov eax, dword [rbp - 8]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
cmp al, 0x2d
jne 0x45cddb
cmp dword [rbp - 0x88], 1
jne 0x45cdd3
mov dword [rbp - 0x84], 0x30
jmp 0x45cf05
add dword [rbp - 8], 1
mov byte [rbp - 0x26], 1
mov eax, dword [rbp - 8]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
cmp al, 0x30
jne 0x45ce08
mov eax, dword [rbp - 8]
add eax, 1
cmp dword [rbp - 0x88], eax
jle 0x45ce08
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov qword [rbp - 0x48], 1
mov qword [rbp - 0x50], 0
mov eax, dword [rbp - 0x88]
sub eax, 1
mov dword [rbp - 4], eax
mov eax, dword [rbp - 4]
cmp eax, dword [rbp - 8]
jl 0x45cee4
mov eax, dword [rbp - 4]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
sub eax, 0x30
mov dword [rbp - 0xc], eax
cmp dword [rbp - 0xc], 0
js 0x45cebc
cmp dword [rbp - 0xc], 9
jg 0x45cebc
mov eax, dword [rbp - 0xc]
cdqe
imul rax, qword [rbp - 0x48]
add qword [rbp - 0x50], rax
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x10000000
test eax, eax
je 0x45ce90
mov rax, qword [rbp - 0x50]
cmp rax, qword [rbp - 0x38]
jbe 0x45cec5
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
cmp byte [rbp - 0x26], 0
je 0x45cea9
mov rax, qword [rbp - 0x50]
cmp rax, qword [rbp - 0x40]
jbe 0x45cec5
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov rax, qword [rbp - 0x50]
cmp rax, qword [rbp - 0x38]
jbe 0x45cec5
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
nop
mov rdx, qword [rbp - 0x48]
mov rax, rdx
shl rax, 2
add rax, rdx
add rax, rax
mov qword [rbp - 0x48], rax
sub dword [rbp - 4], 1
jmp 0x45ce24
cmp byte [rbp - 0x26], 0
je 0x45cefa
mov rax, qword [rbp - 0x50]
neg rax
mov qword [rbp - 0x98], rax
jmp 0x45cf05
mov rax, qword [rbp - 0x50]
mov qword [rbp - 0x98], rax
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1000000
test eax, eax
jne 0x45e29b
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
sar eax, 3
cdqe
and eax, 0x3f
mov r8, rax
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rcx, qword [rdx + rax*8]
lea rax, [rbp - 0x98]
mov rdx, rax
call sub.msvcrt.dll_memcpy
nop
jmp 0x45e29b
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x40000000
test eax, eax
je 0x45cfe9
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
movzx eax, byte [rax + 0x28]
test al, al
je 0x45cfb4
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
mov eax, dword [rax + 8]
cmp dword [rbp - 0x88], eax
jle 0x45cfb4
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rdx, qword [rdx + rax]
mov rcx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rcx + rax*8]
mov rcx, rax
call fcn.00446590
jmp 0x45e2a5
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x40000000
test eax, eax
jne 0x45d428
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x20000000
test eax, eax
jne 0x45d428
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x40
jne 0x45d428
cmp dword [rbp - 0x88], 0
jne 0x45d06d
mov dword [rbp - 0x84], 0x30
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
mov qword [rax], 0
jmp 0x45e2a5
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rcx, rax
call fcn.0045c1c7
mov dword [rbp - 0xc], eax
cmp dword [rbp - 0xc], 0
setne al
test al, al
je 0x45d137
mov rax, qword [0x00c57298]
mov qword [rbp - 0x58], rax
mov rax, qword [rbp - 0x58]
cmp rax, qword [rbp - 0x38]
jbe 0x45d0bd
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
cmp dword [rbp - 0xc], 1
jne 0x45d0d6
cmp dword [rbp - 0x88], 1
jne 0x45d0d6
mov dword [rbp - 0x84], 0x48
cmp dword [rbp - 0xc], 2
jne 0x45d0ef
cmp dword [rbp - 0x88], 1
jne 0x45d0ef
mov dword [rbp - 0x84], 0x4f
cmp dword [rbp - 0xc], 3
jne 0x45d108
cmp dword [rbp - 0x88], 1
jne 0x45d108
mov dword [rbp - 0x84], 0x42
cmp dword [rbp - 0x88], 2
jne 0x45d11b
mov dword [rbp - 0x84], 0x30
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
mov rdx, qword [rbp - 0x58]
mov qword [rax], rdx
jmp 0x45e2a5
mov dword [rbp - 8], 0
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x10000000
test eax, eax
jne 0x45d1a3
mov eax, dword [rbp - 8]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
cmp al, 0x2d
jne 0x45d1a3
cmp dword [rbp - 0x88], 1
jne 0x45d19b
mov dword [rbp - 0x84], 0x30
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
mov qword [rax], 0
jmp 0x45e2a5
add dword [rbp - 8], 1
mov byte [rbp - 0x26], 1
mov eax, dword [rbp - 8]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
cmp al, 0x30
jne 0x45d1d0
mov eax, dword [rbp - 8]
add eax, 1
cmp dword [rbp - 0x88], eax
jle 0x45d1d0
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov dword [rbp - 0x10], 0
mov eax, dword [rbp - 0x88]
sub eax, 1
mov dword [rbp - 4], eax
mov eax, dword [rbp - 4]
cmp eax, dword [rbp - 8]
jl 0x45d225
mov eax, dword [rbp - 4]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
sub eax, 0x30
mov dword [rbp - 0xc], eax
cmp dword [rbp - 0xc], 0
js 0x45d212
cmp dword [rbp - 0xc], 9
jle 0x45d21b
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
add dword [rbp - 0x10], 1
sub dword [rbp - 4], 1
jmp 0x45d1e3
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x10000000
test eax, eax
je 0x45d263
cmp dword [rbp - 0x10], 0x13
jle 0x45d32e
cmp dword [rbp - 0x10], 0x14
jle 0x45d256
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov rax, qword [str.18446744073709551615]
mov qword [rbp - 0x30], rax
jmp 0x45d29a
cmp dword [rbp - 0x10], 0x12
jle 0x45d331
cmp dword [rbp - 0x10], 0x13
jle 0x45d27c
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
cmp byte [rbp - 0x26], 0
je 0x45d28f
mov rax, qword [str.9223372036854775808]
mov qword [rbp - 0x30], rax
jmp 0x45d29a
mov rax, qword [str.9223372036854775807]
mov qword [rbp - 0x30], rax
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rax, qword [rax]
mov qword [rbp - 0x90], rax
mov dword [rbp - 4], 0
mov eax, dword [rbp - 4]
cmp eax, dword [rbp - 0x10]
jge 0x45d334
mov edx, dword [rbp - 4]
mov eax, dword [rbp - 8]
add eax, edx
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx edx, byte [rax]
mov eax, dword [rbp - 4]
cdqe
mov rcx, qword [rbp - 0x30]
add rax, rcx
movzx eax, byte [rax]
cmp dl, al
jb 0x45d337
mov edx, dword [rbp - 4]
mov eax, dword [rbp - 8]
add eax, edx
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx edx, byte [rax]
mov eax, dword [rbp - 4]
cdqe
mov rcx, qword [rbp - 0x30]
add rax, rcx
movzx eax, byte [rax]
cmp dl, al
jbe 0x45d328
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
add dword [rbp - 4], 1
jmp 0x45d2c3
nop
jmp 0x45d338
nop
jmp 0x45d338
nop
jmp 0x45d338
nop
mov rax, qword [rbp - 0x80]
mov rax, qword [rax]
mov byte [rax], 0
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rdx, qword [rbp - 0x80]
mov rcx, rax
call fcn.00446eed
mov rcx, rax
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rdx, rcx
mov rcx, rax
call fcn.00446590
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x10000000
test eax, eax
je 0x45d3e6
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rcx, qword [rdx + rax*8]
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rax, qword [rax]
mov r8, rcx
lea rdx, str._I64u
mov rcx, rax
call fcn.004c54a0
jmp 0x45e2a5
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rcx, qword [rdx + rax*8]
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rax, qword [rax]
mov r8, rcx
lea rdx, str._I64i
mov rcx, rax
call fcn.004c54a0
jmp 0x45e2a5
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x20000000
test eax, eax
je 0x45e29e
mov dword [0x00c5a414], 0
mov dword [0x00c5a418], 0
mov dword [0x00c5a420], 0
mov qword [rbp - 0x50], 0
mov dword [0x00c5a41c], 0
mov dword [0x00c576a0], 0
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x20
jne 0x45d4af
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
pxor xmm0, xmm0
movss dword [rax], xmm0
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x40
jne 0x45d4e0
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
pxor xmm0, xmm0
movsd qword [rax], xmm0
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x100
jne 0x45d50f
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
fldz
fstp xword [rax]
cmp dword [rbp - 0x88], 0
jne 0x45d527
mov dword [rbp - 0x84], 0x30
jmp 0x45e2a5
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rcx, rax
call fcn.0045c1c7
mov dword [rbp - 0xc], eax
cmp dword [rbp - 0xc], 0
setne al
test al, al
je 0x45d81c
mov rax, qword [0x00c57298]
mov qword [rbp - 0x58], rax
cmp dword [rbp - 0xc], 1
jne 0x45d57d
cmp dword [rbp - 0x88], 1
jne 0x45d57d
mov dword [rbp - 0x84], 0x48
cmp dword [rbp - 0xc], 2
jne 0x45d596
cmp dword [rbp - 0x88], 1
jne 0x45d596
mov dword [rbp - 0x84], 0x4f
cmp dword [rbp - 0xc], 3
jne 0x45d5af
cmp dword [rbp - 0x88], 1
jne 0x45d5af
mov dword [rbp - 0x84], 0x42
cmp dword [rbp - 0x88], 2
jne 0x45d5c2
mov dword [rbp - 0x84], 0x30
mov qword [0x00c5a428], 0x7fffffff
mov rax, qword [0x00c5a428]
shl rax, 0x20
mov qword [0x00c5a428], rax
mov rdx, qword [0x00c5a428]
mov eax, 0xffffffff
or rax, rdx
mov qword [0x00c5a428], rax
mov rax, qword [0x00c5a428]
cmp qword [rbp - 0x58], rax
jbe 0x45d711
mov rax, qword [0x00c5a428]
sub qword [rbp - 0x58], rax
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x20
jne 0x45d662
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
movss xmm1, dword [rax]
mov rax, qword [0x00c5a428]
cvtsi2ss xmm0, rax
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
addss xmm0, xmm1
movss dword [rax], xmm0
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x40
jne 0x45d6b3
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
movsd xmm1, qword [rax]
mov rax, qword [0x00c5a428]
cvtsi2sd xmm0, rax
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
addsd xmm0, xmm1
movsd qword [rax], xmm0
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x100
jne 0x45d5f5
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
fld xword [rax]
mov rax, qword [0x00c5a428]
mov qword [rbp - 0xa8], rax
fild qword [rbp - 0xa8]
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
faddp st(1)
fstp xword [rax]
jmp 0x45d5f5
mov rax, qword [rbp - 0x58]
mov qword [0x00c5a428], rax
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x20
jne 0x45d76d
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
movss xmm1, dword [rax]
mov rax, qword [0x00c5a428]
cvtsi2ss xmm0, rax
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
addss xmm0, xmm1
movss dword [rax], xmm0
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x40
jne 0x45d7be
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
movsd xmm1, qword [rax]
mov rax, qword [0x00c5a428]
cvtsi2sd xmm0, rax
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
addsd xmm0, xmm1
movsd qword [rax], xmm0
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x100
jne 0x45e2a1
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
fld xword [rax]
mov rax, qword [0x00c5a428]
mov qword [rbp - 0xa8], rax
fild qword [rbp - 0xa8]
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
faddp st(1)
fstp xword [rax]
jmp 0x45e2a1
mov dword [rbp - 8], 0
mov eax, dword [rbp - 8]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
cmp al, 0x2d
jne 0x45d859
cmp dword [rbp - 0x88], 1
jne 0x45d851
mov dword [rbp - 0x84], 0x30
jmp 0x45e2a5
add dword [rbp - 8], 1
mov byte [rbp - 0x26], 1
mov eax, dword [rbp - 8]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
cmp al, 0x30
jne 0x45d8a8
mov eax, dword [rbp - 8]
add eax, 1
cmp dword [rbp - 0x88], eax
jle 0x45e2a4
add dword [rbp - 8], 1
mov eax, dword [rbp - 8]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
cmp al, 0x2e
je 0x45d970
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov eax, dword [rbp - 8]
mov dword [rbp - 4], eax
mov eax, dword [rbp - 4]
cmp eax, dword [rbp - 0x88]
jge 0x45dc46
mov eax, dword [rbp - 4]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
mov dword [rbp - 0xc], eax
cmp dword [rbp - 0xc], 0x44
je 0x45d8ed
cmp dword [rbp - 0xc], 0x64
je 0x45d8ed
cmp dword [rbp - 0xc], 0x45
je 0x45d8ed
cmp dword [rbp - 0xc], 0x65
jne 0x45d909
mov eax, dword [rbp - 4]
cmp eax, dword [rbp - 8]
jne 0x45d8fe
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov eax, dword [rbp - 4]
mov dword [rbp - 8], eax
jmp 0x45da8f
cmp dword [rbp - 0xc], 0x2e
jne 0x45d917
mov eax, dword [rbp - 4]
mov dword [rbp - 8], eax
jmp 0x45d971
sub dword [rbp - 0xc], 0x30
cmp dword [rbp - 0xc], 0
js 0x45d927
cmp dword [rbp - 0xc], 9
jle 0x45d930
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov eax, dword [0x00c5a414]
add eax, 1
mov dword [0x00c5a414], eax
mov eax, dword [rbp - 0xc]
mov edx, dword [0x00c576a0]
add eax, 0x30
movsxd rdx, edx
lea rcx, [0x00c572a0]
mov byte [rdx + rcx], al
mov eax, dword [0x00c576a0]
add eax, 1
mov dword [0x00c576a0], eax
add dword [rbp - 4], 1
jmp 0x45d8ae
nop
mov dword [rbp - 0x10], 1
mov eax, dword [rbp - 0x88]
sub eax, 1
cmp dword [rbp - 8], eax
jne 0x45d995
mov dword [rbp - 0x84], 0x30
jmp 0x45dc4d
add dword [rbp - 8], 1
mov eax, dword [rbp - 8]
mov dword [rbp - 4], eax
mov eax, dword [rbp - 4]
cmp eax, dword [rbp - 0x88]
jge 0x45dc49
mov eax, dword [rbp - 4]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
mov dword [rbp - 0xc], eax
cmp dword [rbp - 0xc], 0x44
je 0x45d9de
cmp dword [rbp - 0xc], 0x64
je 0x45d9de
cmp dword [rbp - 0xc], 0x45
je 0x45d9de
cmp dword [rbp - 0xc], 0x65
jne 0x45da04
mov eax, dword [0x00c576a0]
test eax, eax
je 0x45da04
mov eax, dword [rbp - 4]
cmp eax, dword [rbp - 8]
jne 0x45d9f9
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov eax, dword [rbp - 4]
mov dword [rbp - 8], eax
jmp 0x45da8f
sub dword [rbp - 0xc], 0x30
cmp dword [rbp - 0xc], 0
js 0x45da14
cmp dword [rbp - 0xc], 9
jle 0x45da1d
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
cmp dword [rbp - 0xc], 0
je 0x45da2a
mov dword [rbp - 0x10], 0
cmp dword [rbp - 0x10], 0
je 0x45da3f
mov eax, dword [0x00c5a41c]
add eax, 1
mov dword [0x00c5a41c], eax
mov eax, dword [0x00c5a418]
add eax, 1
mov dword [0x00c5a418], eax
mov eax, dword [0x00c576a0]
test eax, eax
jne 0x45da5e
cmp dword [rbp - 0xc], 0
je 0x45da86
mov eax, dword [rbp - 0xc]
mov edx, dword [0x00c576a0]
add eax, 0x30
movsxd rdx, edx
lea rcx, [0x00c572a0]
mov byte [rdx + rcx], al
mov eax, dword [0x00c576a0]
add eax, 1
mov dword [0x00c576a0], eax
add dword [rbp - 4], 1
jmp 0x45d99f
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x20
jne 0x45dad5
mov eax, dword [rbp - 8]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
mov dword [rbp - 0xc], eax
cmp dword [rbp - 0xc], 0x44
je 0x45dacc
cmp dword [rbp - 0xc], 0x64
jne 0x45dad5
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov eax, dword [rbp - 8]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
mov dword [rbp - 0xc], eax
cmp dword [rbp - 0xc], 0x44
je 0x45daf9
cmp dword [rbp - 0xc], 0x64
jne 0x45db0b
mov eax, dword [rbp - 8]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
mov byte [rax], 0x45
mov eax, dword [rbp - 0x88]
sub eax, 1
cmp dword [rbp - 8], eax
jne 0x45db28
mov dword [rbp - 0x84], 0x30
jmp 0x45dc4d
add dword [rbp - 8], 1
mov eax, dword [rbp - 8]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
mov dword [rbp - 0xc], eax
cmp dword [rbp - 0xc], 0x2d
jne 0x45db75
mov eax, dword [rbp - 0x88]
sub eax, 1
cmp dword [rbp - 8], eax
jne 0x45db67
mov dword [rbp - 0x84], 0x30
jmp 0x45dc4d
mov dword [0x00c5a420], 1
add dword [rbp - 8], 1
cmp dword [rbp - 0xc], 0x2b
jne 0x45db9c
mov eax, dword [rbp - 0x88]
sub eax, 1
cmp dword [rbp - 8], eax
jne 0x45db98
mov dword [rbp - 0x84], 0x30
jmp 0x45dc4d
add dword [rbp - 8], 1
mov eax, dword [rbp - 8]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
cmp al, 0x30
jne 0x45dbc9
mov eax, dword [rbp - 8]
add eax, 1
cmp dword [rbp - 0x88], eax
jle 0x45dbc9
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov qword [rbp - 0x48], 1
mov qword [rbp - 0x50], 0
mov eax, dword [rbp - 0x88]
sub eax, 1
mov dword [rbp - 4], eax
mov eax, dword [rbp - 4]
cmp eax, dword [rbp - 8]
jl 0x45dc4c
mov eax, dword [rbp - 4]
cdqe
mov rdx, qword [rbp - 0x90]
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
sub eax, 0x30
mov dword [rbp - 0xc], eax
cmp dword [rbp - 0xc], 0
js 0x45dc3d
cmp dword [rbp - 0xc], 9
jg 0x45dc3d
mov eax, dword [rbp - 0xc]
cdqe
imul rax, qword [rbp - 0x48]
add qword [rbp - 0x50], rax
mov rdx, qword [rbp - 0x48]
mov rax, rdx
shl rax, 2
add rax, rdx
add rax, rax
mov qword [rbp - 0x48], rax
sub dword [rbp - 4], 1
jmp 0x45dbe5
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
nop
jmp 0x45dc4d
nop
jmp 0x45dc4d
nop
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x20
jne 0x45df06
mov eax, dword [0x00c5a420]
test eax, eax
je 0x45dc78
neg qword [rbp - 0x50]
mov eax, dword [0x00c5a41c]
cmp eax, 1
jne 0x45dca2
mov eax, dword [0x00c5a418]
cmp eax, 1
jne 0x45dca2
mov dword [0x00c5a418], 0
mov dword [0x00c5a41c], 0
mov eax, dword [0x00c5a41c]
cmp eax, 0x2b
jle 0x45dcb6
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov eax, dword [0x00c5a414]
test eax, eax
jne 0x45dcd4
mov edx, dword [0x00c5a418]
mov eax, dword [0x00c5a41c]
cmp edx, eax
je 0x45de69
mov eax, dword [0x00c5a414]
mov dword [rbp - 4], eax
cmp dword [rbp - 4], 0
jne 0x45dcee
mov eax, dword [0x00c5a41c]
neg eax
mov dword [rbp - 4], eax
mov rax, qword [rbp - 0x50]
mov edx, eax
mov eax, dword [rbp - 4]
add eax, edx
mov dword [rbp - 4], eax
cmp dword [rbp - 4], 0x27
jle 0x45dd0b
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
cmp dword [rbp - 4], 0x27
jne 0x45dd8c
mov rax, qword [str.3402823]
mov qword [rbp - 0x30], rax
mov eax, dword [0x00c576a0]
mov dword [rbp - 8], eax
cmp dword [rbp - 8], 7
jle 0x45dd32
mov dword [rbp - 8], 7
mov dword [rbp - 0xc], 0
mov eax, dword [rbp - 0xc]
cmp eax, dword [rbp - 8]
jge 0x45dd8c
mov eax, dword [rbp - 0xc]
cdqe
lea rdx, [0x00c572a0]
movzx edx, byte [rax + rdx]
mov rax, qword [rbp - 0x30]
movzx eax, byte [rax]
cmp dl, al
jbe 0x45dd65
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov eax, dword [rbp - 0xc]
cdqe
lea rdx, [0x00c572a0]
movzx edx, byte [rax + rdx]
mov rax, qword [rbp - 0x30]
movzx eax, byte [rax]
cmp dl, al
jb 0x45dd8b
add qword [rbp - 0x30], 1
add dword [rbp - 0xc], 1
jmp 0x45dd39
nop
mov eax, dword [0x00c5a418]
test eax, eax
je 0x45ddda
mov eax, dword [0x00c5a414]
test eax, eax
je 0x45ddbc
mov edx, dword [0x00c5a418]
mov eax, dword [0x00c5a414]
add eax, edx
cmp eax, 8
jle 0x45ddda
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov edx, dword [0x00c5a418]
mov eax, dword [0x00c5a41c]
sub edx, eax
mov eax, edx
cmp eax, 8
jle 0x45ddda
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
cmp dword [rbp - 4], 0xffffffd4
jge 0x45dde9
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
cmp dword [rbp - 4], 0xffffffd4
jne 0x45de6c
mov rax, qword [str.1401298]
mov qword [rbp - 0x30], rax
mov eax, dword [0x00c576a0]
mov dword [rbp - 8], eax
cmp dword [rbp - 8], 7
jle 0x45de10
mov dword [rbp - 8], 7
mov dword [rbp - 0xc], 0
mov eax, dword [rbp - 0xc]
cmp eax, dword [rbp - 8]
jge 0x45de70
mov eax, dword [rbp - 0xc]
cdqe
lea rdx, [0x00c572a0]
movzx edx, byte [rax + rdx]
mov rax, qword [rbp - 0x30]
movzx eax, byte [rax]
cmp dl, al
jae 0x45de43
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov eax, dword [rbp - 0xc]
cdqe
lea rdx, [0x00c572a0]
movzx edx, byte [rax + rdx]
mov rax, qword [rbp - 0x30]
movzx eax, byte [rax]
cmp dl, al
ja 0x45de6f
add qword [rbp - 0x30], 1
add dword [rbp - 0xc], 1
jmp 0x45de17
nop
jmp 0x45de70
nop
jmp 0x45de70
nop
mov rax, qword [rbp - 0x80]
mov rax, qword [rax]
mov byte [rax], 0
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rdx, qword [rbp - 0x80]
mov rcx, rax
call fcn.00446eed
mov rcx, rax
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rdx, rcx
mov rcx, rax
call fcn.00446590
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rcx, qword [rdx + rax*8]
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rax, qword [rax]
mov r8, rcx
lea rdx, [0x005b4fa6]
mov rcx, rax
call fcn.004c54a0
jmp 0x45e2a5
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x40
jne 0x45e1cd
mov eax, dword [0x00c5a420]
test eax, eax
je 0x45df31
neg qword [rbp - 0x50]
mov eax, dword [0x00c5a41c]
cmp eax, 1
jne 0x45df5b
mov eax, dword [0x00c5a418]
cmp eax, 1
jne 0x45df5b
mov dword [0x00c5a418], 0
mov dword [0x00c5a41c], 0
mov eax, dword [0x00c5a41c]
cmp eax, 0x142
jle 0x45df71
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov eax, dword [0x00c5a414]
test eax, eax
jne 0x45df8f
mov edx, dword [0x00c5a418]
mov eax, dword [0x00c5a41c]
cmp edx, eax
je 0x45e130
mov eax, dword [0x00c5a414]
mov dword [rbp - 4], eax
cmp dword [rbp - 4], 0
jne 0x45dfa9
mov eax, dword [0x00c5a41c]
neg eax
mov dword [rbp - 4], eax
mov rax, qword [rbp - 0x50]
mov edx, eax
mov eax, dword [rbp - 4]
add eax, edx
mov dword [rbp - 4], eax
cmp dword [rbp - 4], 0x135
jle 0x45dfc9
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
cmp dword [rbp - 4], 0x135
jne 0x45e04d
mov rax, qword [str.17976931]
mov qword [rbp - 0x30], rax
mov eax, dword [0x00c576a0]
mov dword [rbp - 8], eax
cmp dword [rbp - 8], 8
jle 0x45dff3
mov dword [rbp - 8], 8
mov dword [rbp - 0xc], 0
mov eax, dword [rbp - 0xc]
cmp eax, dword [rbp - 8]
jge 0x45e04d
mov eax, dword [rbp - 0xc]
cdqe
lea rdx, [0x00c572a0]
movzx edx, byte [rax + rdx]
mov rax, qword [rbp - 0x30]
movzx eax, byte [rax]
cmp dl, al
jbe 0x45e026
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov eax, dword [rbp - 0xc]
cdqe
lea rdx, [0x00c572a0]
movzx edx, byte [rax + rdx]
mov rax, qword [rbp - 0x30]
movzx eax, byte [rax]
cmp dl, al
jb 0x45e04c
add qword [rbp - 0x30], 1
add dword [rbp - 0xc], 1
jmp 0x45dffa
nop
mov eax, dword [0x00c5a418]
test eax, eax
je 0x45e09b
mov eax, dword [0x00c5a414]
test eax, eax
je 0x45e07d
mov edx, dword [0x00c5a418]
mov eax, dword [0x00c5a414]
add eax, edx
cmp eax, 0x10
jle 0x45e09b
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov edx, dword [0x00c5a418]
mov eax, dword [0x00c5a41c]
sub edx, eax
mov eax, edx
cmp eax, 0x10
jle 0x45e09b
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
cmp dword [rbp - 4], 0xfffffebd
jge 0x45e0ad
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
cmp dword [rbp - 4], 0xfffffebd
jne 0x45e133
mov rax, qword [str.4940656]
mov qword [rbp - 0x30], rax
mov eax, dword [0x00c576a0]
mov dword [rbp - 8], eax
cmp dword [rbp - 8], 7
jle 0x45e0d7
mov dword [rbp - 8], 7
mov dword [rbp - 0xc], 0
mov eax, dword [rbp - 0xc]
cmp eax, dword [rbp - 8]
jge 0x45e137
mov eax, dword [rbp - 0xc]
cdqe
lea rdx, [0x00c572a0]
movzx edx, byte [rax + rdx]
mov rax, qword [rbp - 0x30]
movzx eax, byte [rax]
cmp dl, al
jae 0x45e10a
mov byte [rbp - 0x25], 0
jmp 0x45e2a5
mov eax, dword [rbp - 0xc]
cdqe
lea rdx, [0x00c572a0]
movzx edx, byte [rax + rdx]
mov rax, qword [rbp - 0x30]
movzx eax, byte [rax]
cmp dl, al
ja 0x45e136
add qword [rbp - 0x30], 1
add dword [rbp - 0xc], 1
jmp 0x45e0de
nop
jmp 0x45e137
nop
jmp 0x45e137
nop
mov rax, qword [rbp - 0x80]
mov rax, qword [rax]
mov byte [rax], 0
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rdx, qword [rbp - 0x80]
mov rcx, rax
call fcn.00446eed
mov rcx, rax
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rdx, rcx
mov rcx, rax
call fcn.00446590
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rcx, qword [rdx + rax*8]
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rax, qword [rax]
mov r8, rcx
lea rdx, [0x005b4fa9]
mov rcx, rax
call fcn.004c54a0
jmp 0x45e2a5
mov rdx, qword [0x005d2b40]
mov eax, dword [rbp - 0x1c]
cdqe
mov eax, dword [rdx + rax*4]
and eax, 0x1ff
cmp eax, 0x100
jne 0x45e2a5
mov rax, qword [rbp - 0x80]
mov rax, qword [rax]
mov byte [rax], 0
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rdx, qword [rbp - 0x80]
mov rcx, rax
call fcn.00446eed
mov rcx, rax
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rdx, rcx
mov rcx, rax
call fcn.00446590
mov eax, dword [rbp - 0x1c]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rax, qword [rax]
lea r8, [0x00c5a430]
lea rdx, [0x005b4fa9]
mov rcx, rax
call fcn.004c54a0
movsd xmm2, qword [0x00c5a430]
movsd qword [rbp - 0xa8], xmm2
mov rdx, qword [0x005d2b30]
mov eax, dword [rbp - 0x1c]
cdqe
mov rax, qword [rdx + rax*8]
fld qword [rbp - 0xa8]
fstp xword [rax]
jmp 0x45e2a5
nop
jmp 0x45e2a5
nop
jmp 0x45e2a5
nop
jmp 0x45e2a5
nop
cmp byte [rbp - 0x25], 0
je 0x45ea15
mov rdx, qword [rbp - 0x68]
mov rax, qword [rbp - 0x70]
mov rcx, rax
call fcn.00446590
jmp 0x45e2c2
nop
mov dword [0x00c5a438], 0
mov rax, qword [0x00723a70]
movzx eax, byte [rax + 0x11]
test al, al
jne 0x45e50e
mov dword [rbp - 4], 1
mov rax, qword [0x00723a70]
mov eax, dword [rax + 0x30]
cmp eax, 0x1f
ja 0x45e317
mov rax, qword [0x00723a70]
movzx eax, word [rax + 0x20]
cmp ax, 0x100
je 0x45e317
mov rax, qword [0x00723a70]
movzx eax, word [rax + 0x20]
cmp ax, 0x20
jne 0x45e332
call fcn.00438678
and eax, 0x200
test rax, rax
setne al
test al, al
je 0x45e332
mov dword [rbp - 4], 0
mov eax, dword [0x00c5a438]
cmp dword [rbp - 4], eax
je 0x45e50e
mov eax, dword [0x00c5a438]
xor eax, 1
mov dword [0x00c5a438], eax
mov rax, qword [0x00723a70]
movzx eax, byte [rax + 0x5c]
movzx eax, al
mov dword [0x00c5a454], eax
mov rax, qword [0x00723a70]
mov byte [rax + 0x5c], 1
mov rdx, qword [0x00713040]
mov rax, qword [0x00723a70]
mov eax, dword [rax + 0x30]
mov eax, eax
shl rax, 2
add rax, rdx
mov eax, dword [rax]
mov dword [0x00c5a450], eax
mov rdx, qword [0x00713048]
mov rax, qword [0x00723a70]
mov eax, dword [rax + 0x30]
mov eax, eax
shl rax, 2
add rax, rdx
mov eax, dword [rax]
mov dword [0x00c5a44c], eax
mov eax, dword [0x00c5a44c]
test eax, eax
jne 0x45e3c7
mov dword [0x00c5a44c], 1
mov eax, dword [0x00c5a44c]
mov dword [0x00c5a458], eax
mov rax, qword [0x00723a70]
mov eax, dword [rax + 0x30]
cmp eax, 0x1f
ja 0x45e404
mov rax, qword [0x00723a70]
movzx eax, word [rax + 0x20]
cmp ax, 0x100
je 0x45e404
mov rax, qword [0x00723a70]
movzx eax, word [rax + 0x20]
cmp ax, 0x20
jne 0x45e40e
mov dword [0x00c5a458], 1
mov rax, qword [0x00723a70]
movzx eax, word [rax + 0x3a]
cwde
lea edx, [rax - 1]
mov eax, dword [0x00c5a450]
imul eax, edx
mov dword [0x00c5a448], eax
mov dword [0x00c5a440], 0
mov edx, dword [0x00c5a440]
mov eax, dword [0x00c5a450]
cmp edx, eax
jge 0x45e4fe
mov rax, qword [0x00723a70]
movzx eax, word [rax + 0x38]
cwde
lea edx, [rax - 1]
mov eax, dword [0x00c5a44c]
imul eax, edx
mov dword [0x00c5a444], eax
mov dword [0x00c5a43c], 0
mov edx, dword [0x00c5a43c]
mov eax, dword [0x00c5a458]
cmp edx, eax
jge 0x45e4db
mov edx, dword [0x00c5a448]
mov eax, dword [0x00c5a444]
mov ecx, eax
call fcn.00456c3a
mov edx, eax
mov rax, qword [0x00723a70]
mov eax, dword [rax + 0x24]
mov ecx, edx
xor ecx, eax
mov edx, dword [0x00c5a448]
mov eax, dword [0x00c5a444]
mov r8d, ecx
mov ecx, eax
call fcn.004397ea
mov eax, dword [0x00c5a444]
add eax, 1
mov dword [0x00c5a444], eax
mov eax, dword [0x00c5a43c]
add eax, 1
mov dword [0x00c5a43c], eax
jmp 0x45e472
mov eax, dword [0x00c5a448]
add eax, 1
mov dword [0x00c5a448], eax
mov eax, dword [0x00c5a440]
add eax, 1
mov dword [0x00c5a440], eax
jmp 0x45e436
mov edx, dword [0x00c5a454]
mov rax, qword [0x00723a70]
mov byte [rax + 0x5c], dl
cmp dword [rbp - 0x18], 0
je 0x45e537
sub dword [rbp - 0x18], 1
mov rax, qword [rbp - 0x80]
mov rax, qword [rax]
mov byte [rax], 0x20
mov rdx, qword [rbp - 0x80]
mov rax, qword [rbp - 0x78]
mov rcx, rax
call fcn.00446590
jmp 0x45e5fb
mov rax, qword [0x00723a70]
movzx eax, byte [rax + 0x12]
test al, al
je 0x45e5ca
lea rcx, [0x0059acce]
call fcn.004460de
mov rdx, rax
mov rax, qword [rbp - 0x78]
mov rcx, rax
call fcn.00446590
mov ecx, 0
mov rax, qword [fcn.004c4d80]
call rax
mov rcx, rax
call sub.msvcrt.dll_fgetc
mov dword [rbp - 0x14], eax
cmp dword [rbp - 0x14], 0xffffffff
je 0x45e5ba
cmp dword [rbp - 0x14], 0xa
jne 0x45e591
mov dword [rbp - 0x14], 0xd
lea rcx, [0x005b4f36]
call fcn.004460de
mov rdx, rax
mov rax, qword [rbp - 0x78]
mov rcx, rax
call fcn.00446590
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
mov edx, dword [rbp - 0x14]
mov byte [rax], dl
jmp 0x45e5ec
mov ecx, 0xa
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
jmp 0x45e5ec
mov ecx, 0xa
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
call fcn.00448d1b
mov rdx, rax
mov rax, qword [rbp - 0x78]
mov rcx, rax
call fcn.00446590
mov eax, dword [rbp - 0x5c]
mov edx, 0
mov ecx, eax
call fcn.0049dfc6
mov rax, qword [0x005d2bc0]
movzx eax, byte [rax]
test al, al
jne 0x45ebaf
mov rax, qword [rbp - 0x78]
mov eax, dword [rax + 8]
cmp eax, 1
je 0x45e61e
jmp 0x45e2cc
mov rax, qword [0x00723a70]
movzx eax, byte [rax + 0x11]
test al, al
jne 0x45e807
mov eax, dword [0x00c5a438]
test eax, eax
je 0x45e807
mov dword [0x00c5a438], 0
mov rax, qword [0x00723a70]
movzx eax, byte [rax + 0x5c]
movzx eax, al
mov dword [0x00c5a47c], eax
mov rax, qword [0x00723a70]
mov byte [rax + 0x5c], 1
mov rdx, qword [0x00713040]
mov rax, qword [0x00723a70]
mov eax, dword [rax + 0x30]
mov eax, eax
shl rax, 2
add rax, rdx
mov eax, dword [rax]
mov dword [0x00c5a474], eax
mov rdx, qword [0x00713048]
mov rax, qword [0x00723a70]
mov eax, dword [rax + 0x30]
mov eax, eax
shl rax, 2
add rax, rdx
mov eax, dword [rax]
mov dword [0x00c5a470], eax
mov eax, dword [0x00c5a470]
test eax, eax
jne 0x45e6c0
mov dword [0x00c5a470], 1
mov eax, dword [0x00c5a470]
mov dword [0x00c5a478], eax
mov rax, qword [0x00723a70]
mov eax, dword [rax + 0x30]
cmp eax, 0x1f
ja 0x45e6fd
mov rax, qword [0x00723a70]
movzx eax, word [rax + 0x20]
cmp ax, 0x100
je 0x45e6fd
mov rax, qword [0x00723a70]
movzx eax, word [rax + 0x20]
cmp ax, 0x20
jne 0x45e707
mov dword [0x00c5a478], 1
mov rax, qword [0x00723a70]
movzx eax, word [rax + 0x3a]
cwde
lea edx, [rax - 1]
mov eax, dword [0x00c5a474]
imul eax, edx
mov dword [0x00c5a46c], eax
mov dword [0x00c5a464], 0
mov edx, dword [0x00c5a464]
mov eax, dword [0x00c5a474]
cmp edx, eax
jge 0x45e7f7
mov rax, qword [0x00723a70]
movzx eax, word [rax + 0x38]
cwde
lea edx, [rax - 1]
mov eax, dword [0x00c5a470]
imul eax, edx
mov dword [0x00c5a468], eax
mov dword [0x00c5a460], 0
mov edx, dword [0x00c5a460]
mov eax, dword [0x00c5a478]
cmp edx, eax
jge 0x45e7d4
mov edx, dword [0x00c5a46c]
mov eax, dword [0x00c5a468]
mov ecx, eax
call fcn.00456c3a
mov edx, eax
mov rax, qword [0x00723a70]
mov eax, dword [rax + 0x24]
mov ecx, edx
xor ecx, eax
mov edx, dword [0x00c5a46c]
mov eax, dword [0x00c5a468]
mov r8d, ecx
mov ecx, eax
call fcn.004397ea
mov eax, dword [0x00c5a468]
add eax, 1
mov dword [0x00c5a468], eax
mov eax, dword [0x00c5a460]
add eax, 1
mov dword [0x00c5a460], eax
jmp 0x45e76b
mov eax, dword [0x00c5a46c]
add eax, 1
mov dword [0x00c5a46c], eax
mov eax, dword [0x00c5a464]
add eax, 1
mov dword [0x00c5a464], eax
jmp 0x45e72f
mov edx, dword [0x00c5a47c]
mov rax, qword [0x00723a70]
mov byte [rax + 0x5c], dl
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
movzx eax, byte [rax]
cmp al, 7
jne 0x45e82b
mov rax, qword [rbp - 0x78]
mov edx, 0
mov rcx, rax
call fcn.004592a5
jmp 0x45c904
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
movzx eax, byte [rax]
cmp al, 0xa
jne 0x45e83e
jmp 0x45c904
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
movzx eax, byte [rax]
cmp al, 9
jne 0x45e86d
mov rax, qword [rbp - 0x70]
mov eax, dword [rax + 8]
and eax, 7
mov edx, 8
sub edx, eax
mov eax, edx
mov dword [rbp - 4], eax
mov eax, dword [rbp - 4]
mov dword [rbp - 0x18], eax
jmp 0x45c904
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
movzx eax, byte [rax]
cmp al, 0xb
jne 0x45e880
jmp 0x45c904
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
movzx eax, byte [rax]
cmp al, 0xc
jne 0x45e893
jmp 0x45c904
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
movzx eax, byte [rax]
cmp al, 0x1c
jne 0x45e8a6
jmp 0x45c904
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
movzx eax, byte [rax]
cmp al, 0x1d
jne 0x45e8b9
jmp 0x45c904
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
movzx eax, byte [rax]
cmp al, 0x1e
jne 0x45e8cc
jmp 0x45c904
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
movzx eax, byte [rax]
cmp al, 0x1f
jne 0x45e8df
jmp 0x45c904
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
movzx eax, byte [rax]
cmp al, 0xd
jne 0x45e9fb
mov dword [rbp - 4], 1
mov eax, dword [rbp - 4]
cmp eax, dword [rbp + 0x10]
jg 0x45e926
mov eax, dword [rbp - 4]
cdqe
lea rdx, [rax*8]
lea rax, [0x00c576c0]
mov rax, qword [rdx + rax]
mov rcx, rax
call fcn.0044569d
add dword [rbp - 4], 1
jmp 0x45e8f8
cmp byte [rbp + 0x18], 0
je 0x45e957
mov rax, qword [rbp - 0x80]
mov dword [rax + 8], 0
mov rax, qword [0x00723a70]
movzx eax, byte [rax + 0x12]
test al, al
jne 0x45e957
mov rax, qword [rbp - 0x80]
mov edx, 1
mov rcx, rax
call fcn.004592a5
mov rax, qword [rbp - 0x80]
mov rcx, rax
call fcn.0044569d
mov rax, qword [rbp - 0x68]
mov rcx, rax
call fcn.0044569d
mov rax, qword [rbp - 0x70]
mov rcx, rax
call fcn.0044569d
mov rax, qword [rbp - 0x78]
mov rcx, rax
call fcn.0044569d
mov edx, dword [0x00c57ec8]
mov rax, qword [0x00723a70]
mov byte [rax + 0x3c], dl
mov eax, dword [0x00c5a3fc]
mov edx, 1
mov ecx, eax
call fcn.004719bb
mov eax, dword [0x00c5a400]
mov edx, 1
mov ecx, eax
call fcn.004719bb
mov eax, dword [0x00c5a3f4]
test eax, eax
jne 0x45e9e9
mov dword [0x00587378], 0xffffffff
mov eax, dword [0x00587378]
test eax, eax
je 0x45e9e9
mov ecx, 1
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
jmp 0x45e9cf
mov eax, dword [0x00c5a3f8]
mov ecx, eax
call fcn.00471d29
jmp 0x45ebb0
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
movzx eax, byte [rax]
cmp al, 8
jne 0x45eb58
jmp 0x45ea16
nop
jmp 0x45ea16
nop
jmp 0x45ea16
nop
mov rax, qword [rbp - 0x68]
mov eax, dword [rax + 8]
test eax, eax
je 0x45e2c1
mov rax, qword [rbp - 0x68]
mov eax, dword [rax + 8]
lea edx, [rax - 1]
mov rax, qword [rbp - 0x68]
mov dword [rax + 8], edx
call fcn.00471ebc
mov dword [rbp - 8], eax
mov edx, dword [0x00c5a400]
mov eax, dword [0x00c5a3fc]
mov ecx, eax
call fcn.0044d72b
mov eax, dword [0x00c5a400]
mov ecx, eax
call fcn.00471dee
mov edx, dword [0x00c5a408]
mov rax, qword [0x00723a70]
mov word [rax + 0x38], dx
mov edx, dword [0x00c5a40c]
mov rax, qword [0x00723a70]
mov word [rax + 0x3a], dx
mov edx, dword [0x00c5a404]
mov rax, qword [0x00723a70]
mov byte [rax + 0x5d], dl
mov dword [rbp - 4], 0
mov rax, qword [rbp - 0x68]
mov eax, dword [rax + 8]
cmp dword [rbp - 4], eax
jge 0x45ead5
mov rax, qword [rbp - 0x68]
mov rdx, qword [rax]
mov eax, dword [rbp - 4]
cdqe
add rax, rdx
mov rdx, qword [rbp - 0x78]
mov rdx, qword [rdx]
movzx eax, byte [rax]
mov byte [rdx], al
mov rax, qword [rbp - 0x78]
mov edx, 0
mov rcx, rax
call fcn.004592a5
add dword [rbp - 4], 1
jmp 0x45ea97
mov eax, dword [rbp - 8]
mov ecx, eax
call fcn.00471dee
mov eax, dword [0x00c5a400]
mov edx, dword [rbp - 8]
mov ecx, eax
call fcn.0044d72b
mov rcx, qword [0x00723a28]
mov eax, dword [0x00c5a400]
neg eax
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 6
lea rdx, [rcx + rax]
mov rax, qword [0x00723a70]
movzx edx, word [rdx + 0x38]
mov word [rax + 0x38], dx
mov rcx, qword [0x00723a28]
mov eax, dword [0x00c5a400]
neg eax
movsxd rdx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 6
lea rdx, [rcx + rax]
mov rax, qword [0x00723a70]
movzx edx, word [rdx + 0x3a]
mov word [rax + 0x3a], dx
jmp 0x45c904
mov rdx, qword [rbp - 0x78]
mov rax, qword [rbp - 0x70]
mov rcx, rax
call fcn.00446eed
mov rdx, rax
mov rax, qword [rbp - 0x70]
mov rcx, rax
call fcn.00446590
mov rax, qword [0x00723a70]
movzx eax, byte [rax + 0x12]
test al, al
jne 0x45eb97
mov rax, qword [rbp - 0x78]
mov edx, 0
mov rcx, rax
call fcn.004592a5
mov rdx, qword [rbp - 0x70]
mov rax, qword [rbp - 0x68]
mov rcx, rax
call fcn.00446590
jmp 0x45c904
nop
jmp 0x45ebb0
nop
add rsp, 0xd0
pop rbp
ret