Function at 0x401869
Capabilities:
Write file on windows

Disassembly:
push rbp
push rbx
mov eax, 0x1be8
call fcn.004fcbe0
sub rsp, rax
lea rbp, [rsp + 0x80]
mov dword [rbp + 0x1b24], 0
mov dword [rbp + 0x1b20], 0
lea rax, [rbp + 0x1900]
mov qword [rbp + 0x1b50], rax
mov rax, qword [rbp + 0x1b50]
mov qword [rbp + 0x1b48], rax
mov rax, rbp
mov qword [rbp + 0x1b40], rax
mov rax, qword [rbp + 0x1b40]
mov qword [rbp + 0x1b38], rax
mov qword [rbp + 0x1b30], 0xc8
lea rax, [0x005a3a44]
mov eax, dword [rax]
test eax, eax
je 0x401907
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
mov r9, rax
mov r8d, 0xf
mov edx, 1
lea rcx, str.Starting_parse_n
call sub.msvcrt.dll_fwrite
mov dword [rbp + 0x1b5c], 0
mov dword [rbp + 0x1b58], 0
lea rax, [0x005a3a40]
mov dword [rax], 0
lea rax, [0x005a3a80]
mov dword [rax], 0xfffffffe
jmp 0x40193f
add qword [rbp + 0x1b48], 2
mov eax, dword [rbp + 0x1b5c]
mov edx, eax
mov rax, qword [rbp + 0x1b48]
mov word [rax], dx
mov rax, qword [rbp + 0x1b30]
add rax, rax
lea rdx, [rax - 2]
mov rax, qword [rbp + 0x1b50]
add rax, rdx
cmp qword [rbp + 0x1b48], rax
jb 0x401b8b
mov rdx, qword [rbp + 0x1b48]
mov rax, qword [rbp + 0x1b50]
sub rdx, rax
mov rax, rdx
sar rax, 1
add rax, 1
mov qword [rbp + 0x1b08], rax
cmp qword [rbp + 0x1b30], 0x270f
ja 0x404f44
shl qword [rbp + 0x1b30], 1
cmp qword [rbp + 0x1b30], 0x2710
jbe 0x4019c8
mov qword [rbp + 0x1b30], 0x2710
mov rax, qword [rbp + 0x1b50]
mov qword [rbp + 0x1b00], rax
mov rdx, qword [rbp + 0x1b30]
mov rax, rdx
shl rax, 4
add rax, rdx
add rax, rax
add rax, 0x1f
mov rcx, rax
call sub.msvcrt.dll_malloc
mov qword [rbp + 0x1af8], rax
cmp qword [rbp + 0x1af8], 0
je 0x404f47
mov rax, qword [rbp + 0x1b08]
lea rcx, [rax + rax]
mov rdx, qword [rbp + 0x1af8]
mov rax, qword [rbp + 0x1b50]
mov r9, rdx
mov rdx, rcx
mov r8, rdx
mov rdx, rax
mov rcx, r9
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x1af8]
mov qword [rbp + 0x1b50], rax
mov rax, qword [rbp + 0x1b30]
add rax, rax
add rax, 0x1f
mov qword [rbp + 0x1af0], rax
mov rax, qword [rbp + 0x1af0]
and rax, 0xffffffffffffffe0
add qword [rbp + 0x1af8], rax
mov rax, qword [rbp + 0x1b08]
shl rax, 5
mov rcx, rax
mov rdx, qword [rbp + 0x1af8]
mov rax, qword [rbp + 0x1b40]
mov r9, rdx
mov rdx, rcx
mov r8, rdx
mov rdx, rax
mov rcx, r9
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x1af8]
mov qword [rbp + 0x1b40], rax
mov rax, qword [rbp + 0x1b30]
shl rax, 5
add rax, 0x1f
mov qword [rbp + 0x1ae8], rax
mov rax, qword [rbp + 0x1ae8]
and rax, 0xffffffffffffffe0
add qword [rbp + 0x1af8], rax
lea rax, [rbp + 0x1900]
cmp qword [rbp + 0x1b00], rax
je 0x401af2
mov rax, qword [rbp + 0x1b00]
mov rcx, rax
call sub.msvcrt.dll_free
mov rax, qword [rbp + 0x1b08]
add rax, rax
lea rdx, [rax - 2]
mov rax, qword [rbp + 0x1b50]
add rax, rdx
mov qword [rbp + 0x1b48], rax
mov rax, qword [rbp + 0x1b08]
shl rax, 5
lea rdx, [rax - 0x20]
mov rax, qword [rbp + 0x1b40]
add rax, rdx
mov qword [rbp + 0x1b38], rax
lea rax, [0x005a3a44]
mov eax, dword [rax]
test eax, eax
je 0x401b66
mov rax, qword [rbp + 0x1b30]
mov ebx, eax
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
mov r8d, ebx
lea rdx, str.Stack_size_increased_to__lu_n
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov rax, qword [rbp + 0x1b30]
add rax, rax
lea rdx, [rax - 2]
mov rax, qword [rbp + 0x1b50]
add rax, rdx
cmp qword [rbp + 0x1b48], rax
jae 0x404f34
lea rax, [0x005a3a44]
mov eax, dword [rax]
test eax, eax
je 0x401bbd
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
mov edx, dword [rbp + 0x1b5c]
mov r8d, edx
lea rdx, str.Entering_state__d_n
mov rcx, rax
call sub.msvcrt.dll_fprintf
cmp dword [rbp + 0x1b5c], 0x11
je 0x404f27
nop
mov eax, dword [rbp + 0x1b5c]
cdqe
lea rdx, [rax + rax]
lea rax, [0x0051d880]
movzx eax, word [rdx + rax]
cwde
mov dword [rbp + 0x1b2c], eax
cmp dword [rbp + 0x1b2c], 0xfffffd71
je 0x401ea2
lea rax, [0x005a3a80]
mov eax, dword [rax]
cmp eax, 0xfffffffe
jne 0x401c4b
lea rax, [0x005a3a44]
mov eax, dword [rax]
test eax, eax
je 0x401c3b
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
mov r9, rax
mov r8d, 0x11
mov edx, 1
lea rcx, str.Reading_a_token:
call sub.msvcrt.dll_fwrite
call fcn.00405130
mov edx, eax
lea rax, [0x005a3a80]
mov dword [rax], edx
lea rax, [0x005a3a80]
mov eax, dword [rax]
test eax, eax
jg 0x401cae
mov dword [rbp + 0x1b24], 0
lea rax, [0x005a3a80]
mov edx, dword [rbp + 0x1b24]
mov dword [rax], edx
lea rax, [0x005a3a44]
mov eax, dword [rax]
test eax, eax
je 0x401d53
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
mov r9, rax
mov r8d, 0x15
mov edx, 1
lea rcx, str.Now_at_end_of_input._n
call sub.msvcrt.dll_fwrite
jmp 0x401d53
lea rax, [0x005a3a80]
mov eax, dword [rax]
cmp eax, 0x183
ja 0x401cda
lea rax, [0x005a3a80]
mov eax, dword [rax]
movsxd rdx, eax
lea rax, section..rdata
movzx eax, byte [rdx + rax]
movzx eax, al
jmp 0x401cdf
mov eax, 2
mov dword [rbp + 0x1b24], eax
lea rax, [0x005a3a44]
mov eax, dword [rax]
test eax, eax
je 0x401d53
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
lea r8, str.Next_token_is
lea rdx, [0x0052117a]
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
lea rcx, [rax + 0x60]
mov eax, dword [rbp + 0x1b24]
lea rdx, [0x005a3a60]
mov r8, rdx
mov edx, eax
call fcn.00401586
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
mov rdx, rax
mov ecx, 0xa
call sub.msvcrt.dll_fputc
mov eax, dword [rbp + 0x1b24]
add dword [rbp + 0x1b2c], eax
cmp dword [rbp + 0x1b2c], 0
js 0x401ea5
cmp dword [rbp + 0x1b2c], 0x7a8
jg 0x401ea5
mov eax, dword [rbp + 0x1b2c]
cdqe
lea rdx, [rax + rax]
lea rax, [0x0051f6e0]
movzx eax, word [rdx + rax]
cwde
cmp dword [rbp + 0x1b24], eax
jne 0x401ea5
mov eax, dword [rbp + 0x1b2c]
cdqe
lea rdx, [rax + rax]
lea rax, [0x0051e780]
movzx eax, word [rdx + rax]
cwde
mov dword [rbp + 0x1b2c], eax
cmp dword [rbp + 0x1b2c], 0
jg 0x401dd2
neg dword [rbp + 0x1b2c]
jmp 0x401ed4
cmp dword [rbp + 0x1b58], 0
je 0x401de2
sub dword [rbp + 0x1b58], 1
lea rax, [0x005a3a44]
mov eax, dword [rax]
test eax, eax
je 0x401e50
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
lea r8, str.Shifting
lea rdx, [0x0052117a]
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
lea rcx, [rax + 0x60]
mov eax, dword [rbp + 0x1b24]
lea rdx, [0x005a3a60]
mov r8, rdx
mov edx, eax
call fcn.00401586
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
mov rdx, rax
mov ecx, 0xa
call sub.msvcrt.dll_fputc
lea rax, [0x005a3a80]
mov dword [rax], 0xfffffffe
mov eax, dword [rbp + 0x1b2c]
mov dword [rbp + 0x1b5c], eax
add qword [rbp + 0x1b38], 0x20
mov rcx, qword [rbp + 0x1b38]
lea r8, [0x005a3a60]
mov rax, qword [r8]
mov rdx, qword [r8 + 8]
mov qword [rcx], rax
mov qword [rcx + 8], rdx
mov rax, qword [r8 + 0x10]
mov rdx, qword [r8 + 0x18]
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], rdx
jmp 0x401937
nop
jmp 0x401ea6
nop
mov eax, dword [rbp + 0x1b5c]
cdqe
lea rdx, [rax + rax]
lea rax, [0x0051dee0]
movzx eax, word [rdx + rax]
movzx eax, ax
mov dword [rbp + 0x1b2c], eax
cmp dword [rbp + 0x1b2c], 0
je 0x404c66
nop
mov eax, dword [rbp + 0x1b2c]
movsxd rdx, eax
lea rax, [0x00520fa0]
movzx eax, byte [rdx + rax]
movzx eax, al
mov dword [rbp + 0x1b20], eax
mov eax, 1
sub eax, dword [rbp + 0x1b20]
cdqe
shl rax, 5
mov rdx, rax
mov rax, qword [rbp + 0x1b38]
lea rcx, [rdx + rax]
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rdx
mov rax, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rdx
lea rax, [0x005a3a44]
mov eax, dword [rax]
test eax, eax
je 0x401f5b
mov ecx, dword [rbp + 0x1b2c]
mov rdx, qword [rbp + 0x1b38]
mov rax, qword [rbp + 0x1b48]
mov r8d, ecx
mov rcx, rax
call fcn.004016a0
mov eax, dword [rbp + 0x1b2c]
sub eax, 8
cmp eax, 0x16e
ja case.0x401f90.12
mov eax, eax
lea rdx, [rax*4]
lea rax, [0x00521394]
mov eax, dword [rdx + rax]
movsxd rdx, eax
lea rax, [0x00521394]
add rax, rdx
jmp rax
call fcn.004086ca
jmp 0x404a86
call fcn.0040874b
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov rcx, rax
call fcn.0042401b
mov rcx, rax
call fcn.0041a063
jmp 0x404a86
call fcn.00408649
mov eax, dword [0x0059e100]
cmp eax, 0x13
jg 0x402000
mov eax, dword [0x0059e100]
cdqe
lea rcx, [rax*8]
lea rax, [0x0059e060]
lea rdx, str.MRI_style_script
mov qword [rcx + rax], rdx
mov eax, dword [0x0059e100]
add eax, 1
mov dword [0x0059e100], eax
jmp 0x404a86
call fcn.0040874b
call fcn.0041c654
mov eax, dword [0x0059e100]
sub eax, 1
mov dword [0x0059e100], eax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rdx, rax
lea rcx, str._F_P:_unrecognised_keyword_in_MRI_style_script__s_n
call fcn.00426ada
jmp 0x404a86
mov rax, qword [0x005865e0]
lea rdx, [0x00521245]
mov qword [rax + 0x50], rdx
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov rcx, rax
call fcn.0041cc4b
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov rcx, rax
call fcn.0041cc4b
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rcx, rax
call fcn.0041cc4b
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.0041cbf5
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov rcx, rax
call fcn.0041c5b7
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rcx, rax
call fcn.0041c5b7
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov rcx, rax
call fcn.0041c5b7
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov rcx, rax
call fcn.0041cc80
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov rcx, rax
call fcn.0041cc80
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov rcx, rax
call fcn.0041ccc5
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov rcx, rax
call fcn.0041ccc5
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.0041cbd4
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8d, 0
mov rcx, rax
call fcn.0041cb3b
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov edx, eax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8d, edx
mov edx, 0
mov rcx, rax
call fcn.0041cb3b
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.0041c63e
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov ecx, eax
call fcn.0041cd0a
jmp 0x404a86
call fcn.004085f3
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.00427ddd
jmp 0x404a86
call fcn.0040874b
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov edx, 0
mov rcx, rax
call fcn.00419e78
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.0041cafa
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.0041cafa
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.0041cac8
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.0041cac8
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.0041c5fd
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.0041c5fd
jmp 0x404a86
mov qword [rbp - 0x20], 0
jmp 0x404a86
call fcn.004086f5
jmp 0x404a86
call fcn.0040874b
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov edx, 0
mov rcx, rax
call fcn.00412709
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov edx, 0
mov rcx, rax
call fcn.00412709
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov edx, 0
mov rcx, rax
call fcn.00412709
jmp 0x404a86
call fcn.00408720
jmp 0x404a86
call fcn.0040874b
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rcx, rax
call fcn.00419ed2
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov edx, 0
mov rcx, rax
call fcn.00426e66
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov edx, 1
mov rcx, rax
call fcn.00418b49
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov r9d, 1
mov r8d, 0
mov edx, 0
mov rcx, rax
call fcn.0041a2ac
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rcx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0xa0
mov rax, qword [rax]
mov r9d, 1
mov r8, rcx
mov rcx, rax
call fcn.0041a2ac
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov edx, 0
mov rcx, rax
call fcn.00427ec0
jmp 0x404a86
mov rax, qword [0x005865d0]
mov dword [rax], 1
jmp 0x404a86
mov rax, qword [0x005865d0]
mov dword [rax + 0x30], 1
jmp 0x404a86
mov rax, qword [0x005867d0]
movzx edx, byte [rax + 7]
or edx, 0x40
mov byte [rax + 7], dl
jmp 0x404a86
call fcn.0041a381
jmp 0x404a86
call fcn.0041a3cd
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rcx, rax
call fcn.00419f0e
jmp 0x404a86
call fcn.004085f3
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.00427ddd
jmp 0x404a86
call fcn.0040874b
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rcx, rax
call fcn.0041a8e1
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rcx, rax
call fcn.0041a949
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov edx, 0
mov rcx, rax
call fcn.0041a324
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov edx, 1
mov rcx, rax
call fcn.0041a324
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov rcx, rax
call fcn.0040e2ed
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rcx, rax
call fcn.0041c1c9
jmp 0x404a86
call fcn.0040861e
jmp 0x404a86
call fcn.0040874b
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov r8d, 0
mov edx, 4
mov rcx, rax
call fcn.0040dd91
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov r8d, 0
mov edx, 4
mov rcx, rax
call fcn.0040dd91
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov r8d, 0
mov edx, 4
mov rcx, rax
call fcn.0040dd91
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov r8d, 0
mov edx, 0
mov rcx, rax
call fcn.0040dd91
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov r8d, 0
mov edx, 0
mov rcx, rax
call fcn.0040dd91
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov r8d, 0
mov edx, 0
mov rcx, rax
call fcn.0040dd91
jmp 0x404a86
mov rax, qword [0x005866f0]
movzx eax, byte [rax]
shr al, 7
movzx eax, al
mov qword [rbp - 0x20], rax
mov rax, qword [0x005866f0]
movzx edx, byte [rax]
or edx, 0xffffff80
mov byte [rax], dl
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
and eax, 1
mov rdx, qword [0x005866f0]
shl eax, 7
mov ecx, eax
movzx eax, byte [rdx]
and eax, 0x7f
or eax, ecx
mov byte [rdx], al
jmp 0x404a86
mov rax, qword [0x005866f0]
movzx eax, byte [rax]
shr al, 7
movzx eax, al
mov qword [rbp - 0x20], rax
mov rax, qword [0x005866f0]
movzx edx, byte [rax]
or edx, 0xffffff80
mov byte [rax], dl
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
and eax, 1
mov rdx, qword [0x005866f0]
shl eax, 7
mov ecx, eax
movzx eax, byte [rdx]
and eax, 0x7f
or eax, ecx
mov byte [rdx], al
jmp 0x404a86
mov rax, qword [0x005866f0]
movzx eax, byte [rax]
shr al, 7
movzx eax, al
mov qword [rbp - 0x20], rax
mov rax, qword [0x005866f0]
movzx edx, byte [rax]
or edx, 0xffffff80
mov byte [rax], dl
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
and eax, 1
mov rdx, qword [0x005866f0]
shl eax, 7
mov ecx, eax
movzx eax, byte [rdx]
and eax, 0x7f
or eax, ecx
mov byte [rdx], al
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov edx, 0
mov rcx, rax
call fcn.00419e78
jmp 0x404a86
call fcn.004086f5
jmp 0x404a86
call fcn.0040874b
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov rcx, rax
call fcn.00424083
mov rcx, rax
call fcn.0041a063
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
lea rax, [0x00521247]
mov qword [rbp - 0x20], rax
jmp 0x404a86
lea rax, [0x00521249]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
mov dword [rbp - 0x10], 0
mov qword [rbp - 0x18], 0
mov qword [rbp - 8], 0
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
mov dword [rbp - 0x10], 0
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov qword [rbp - 0x18], rax
mov qword [rbp - 8], 0
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
lea rcx, [rax - 0x20]
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rdx
mov rax, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rdx
mov dword [rbp - 0x10], 1
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
lea rcx, [rax - 0x20]
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rdx
mov rax, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rdx
mov dword [rbp - 0x10], 5
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
lea rcx, [rax - 0x20]
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rdx
mov rax, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rdx
mov dword [rbp - 0x10], 1
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
lea rcx, [rax - 0x20]
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rdx
mov rax, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rdx
mov dword [rbp - 0x10], 2
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
lea rcx, [rax - 0x20]
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rdx
mov rax, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rdx
mov dword [rbp - 0x10], 5
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
lea rcx, [rax - 0x40]
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rdx
mov rax, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rdx
mov dword [rbp - 0x10], 3
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
lea rcx, [rax - 0x40]
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rdx
mov rax, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rdx
mov dword [rbp - 0x10], 1
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
lea rcx, [rax - 0x40]
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rdx
mov rax, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rdx
mov dword [rbp - 0x10], 4
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
lea rcx, [rax - 0x40]
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rdx
mov rax, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rdx
mov dword [rbp - 0x10], 2
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
lea rcx, [rax - 0x20]
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rdx
mov rax, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rdx
mov dword [rbp - 0x10], 6
jmp 0x404a86
mov ecx, 0x20
call fcn.004fb406
mov qword [rbp + 0x1a90], rax
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
movzx eax, byte [rax]
cmp al, 0x21
jne 0x402b41
mov rax, qword [rbp + 0x1a90]
mov dword [rax], 1
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
lea rdx, [rax + 1]
mov rax, qword [rbp + 0x1a90]
mov qword [rax + 8], rdx
jmp 0x402b63
mov rax, qword [rbp + 0x1a90]
mov dword [rax], 0
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1a90]
mov qword [rax + 8], rdx
mov rax, qword [rbp + 0x1a90]
mov dword [rax + 0x10], 0
mov rax, qword [rbp + 0x1a90]
mov qword [rax + 0x18], 0
mov rax, qword [rbp + 0x1a90]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov ecx, 0x20
call fcn.004fb406
mov qword [rbp + 0x1a98], rax
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
movzx eax, byte [rax]
cmp al, 0x21
jne 0x402bda
mov rax, qword [rbp + 0x1a98]
mov dword [rax], 1
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
lea rdx, [rax + 1]
mov rax, qword [rbp + 0x1a98]
mov qword [rax + 8], rdx
jmp 0x402bfc
mov rax, qword [rbp + 0x1a98]
mov dword [rax], 0
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1a98]
mov qword [rax + 8], rdx
mov rax, qword [rbp + 0x1a98]
mov dword [rax + 0x10], 0
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1a98]
mov qword [rax + 0x18], rdx
mov rax, qword [rbp + 0x1a98]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov ecx, 0x18
call fcn.004fb406
mov qword [rbp + 0x1aa0], rax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1aa0]
mov qword [rax + 8], rdx
mov rax, qword [rbp + 0x1aa0]
mov dword [rax + 0x10], 0
mov rax, qword [rbp + 0x1aa0]
mov dword [rax + 4], 0
mov rax, qword [rbp + 0x1aa0]
mov dword [rax], 0
mov rax, qword [rbp + 0x1aa0]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov ecx, 0x10
call fcn.004fb406
mov qword [rbp + 0x1aa8], rax
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1aa8]
mov qword [rax], rdx
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1aa8]
mov qword [rax + 8], rdx
mov rax, qword [rbp + 0x1aa8]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov ecx, 0x10
call fcn.004fb406
mov qword [rbp + 0x1ab0], rax
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1ab0]
mov qword [rax], rdx
mov rax, qword [rbp + 0x1ab0]
mov qword [rax + 8], 0
mov rax, qword [rbp + 0x1ab0]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov ecx, 0x28
call fcn.004fb406
mov qword [rbp + 0x1ab8], rax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1ab8]
mov qword [rax], rdx
mov rcx, qword [rbp + 0x1ab8]
mov r8, qword [rbp + 0x1b38]
mov rax, qword [r8]
mov rdx, qword [r8 + 8]
mov qword [rcx + 8], rax
mov qword [rcx + 0x10], rdx
mov rax, qword [r8 + 0x10]
mov rdx, qword [r8 + 0x18]
mov qword [rcx + 0x18], rax
mov qword [rcx + 0x20], rdx
mov rax, qword [rbp + 0x1ab8]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov ecx, 0x28
call fcn.004fb406
mov qword [rbp + 0x1ac0], rax
mov rax, qword [rbp + 0x1ac0]
mov qword [rax], 0
mov rcx, qword [rbp + 0x1ac0]
mov r8, qword [rbp + 0x1b38]
mov rax, qword [r8]
mov rdx, qword [r8 + 8]
mov qword [rcx + 8], rax
mov qword [rcx + 0x10], rdx
mov rax, qword [r8 + 0x10]
mov rdx, qword [r8 + 0x18]
mov qword [rcx + 0x18], rax
mov qword [rcx + 0x20], rdx
mov rax, qword [rbp + 0x1ac0]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], 0
mov dword [rbp - 0x30], 0
mov qword [rbp - 0x28], 0
mov edx, dword [0x0059e050]
lea rax, [rbp - 0x40]
mov r8d, edx
mov edx, 0
mov rcx, rax
call fcn.00419c98
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], 0
mov dword [rbp - 0x30], 0
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x28], rax
mov edx, dword [0x0059e050]
lea rax, [rbp - 0x40]
mov r8d, edx
mov edx, 0
mov rcx, rax
call fcn.00419c98
jmp 0x404a86
mov edx, dword [0x0059e050]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov r8d, edx
mov rdx, rax
mov ecx, 0
call fcn.00419c98
jmp 0x404a86
mov qword [rbp - 0x40], 0
mov qword [rbp - 0x38], 0
mov dword [rbp - 0x30], 0
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov qword [rbp - 0x28], rax
mov ecx, dword [0x0059e050]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
lea rax, [rbp - 0x40]
mov r8d, ecx
mov rcx, rax
call fcn.00419c98
jmp 0x404a86
mov edx, dword [0x0059e050]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rcx, qword [rbp + 0x1b38]
sub rcx, 0x60
mov r8d, edx
mov rdx, rax
call fcn.00419c98
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
add rax, 0xffffffffffffff80
mov rdx, qword [rbp + 0x1b38]
sub rdx, 0x60
mov rax, qword [rax]
mov qword [rdx + 0x18], rax
mov edx, dword [0x0059e050]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rcx, qword [rbp + 0x1b38]
sub rcx, 0x60
mov r8d, edx
mov rdx, rax
call fcn.00419c98
jmp 0x404a86
mov dword [0x0059e050], 1
jmp 0x404a86
mov dword [0x0059e050], 0
jmp 0x404a86
mov ecx, 6
call fcn.0041a0a2
jmp 0x404a86
mov ecx, 0xf
call fcn.0041a0a2
jmp 0x404a86
mov rax, qword [0x00586600]
mov dword [rax], 1
mov ecx, 0xf
call fcn.0041a0a2
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, qword [rbp + 0x1b38]
sub rdx, 0x60
mov rdx, qword [rdx]
mov ecx, edx
mov rdx, rax
call fcn.00419f81
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rcx, rax
call fcn.00419f45
jmp 0x404a86
call fcn.004086f5
jmp 0x404a86
call fcn.0040874b
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
add rax, 0xffffffffffffff80
mov rax, qword [rax]
mov rcx, rax
call fcn.00424083
mov rcx, rax
call fcn.0041a063
jmp 0x404a86
call fcn.004085f3
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.00427ddd
jmp 0x404a86
call fcn.0040874b
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov eax, dword [rax]
cdqe
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov eax, dword [rax]
cdqe
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov eax, dword [rax]
cdqe
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov eax, dword [rax]
cdqe
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov eax, dword [rax]
cdqe
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
lea r8, [0x0052124b]
mov edx, 0
mov rcx, rax
call fcn.004246d3
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov qword [rbp - 0x20], 0
jmp 0x404a86
mov dword [rbp - 0x20], 0x2b
jmp 0x404a86
mov dword [rbp - 0x20], 0x2d
jmp 0x404a86
mov dword [rbp - 0x20], 0x2a
jmp 0x404a86
mov dword [rbp - 0x20], 0x2f
jmp 0x404a86
mov dword [rbp - 0x20], 0x113
jmp 0x404a86
mov dword [rbp - 0x20], 0x114
jmp 0x404a86
mov dword [rbp - 0x20], 0x26
jmp 0x404a86
mov dword [rbp - 0x20], 0x7c
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8d, 0
mov rcx, rax
call fcn.00423fe5
mov rcx, rax
call fcn.0041a063
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rbx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x103
call fcn.00423efa
mov rdx, rax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov eax, dword [rax]
mov r8, rbx
mov ecx, eax
call fcn.00423cf0
mov rdx, rax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8d, 0
mov rcx, rax
call fcn.00423fe5
mov rcx, rax
call fcn.0041a063
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov r8d, 1
mov rcx, rax
call fcn.00423fe5
mov rcx, rax
call fcn.0041a063
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov r8d, 0
mov rcx, rax
call fcn.0042404d
mov rcx, rax
call fcn.0041a063
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov r8d, 1
mov rcx, rax
call fcn.0042404d
mov rcx, rax
call fcn.0041a063
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov edx, 1
mov rcx, rax
call fcn.0040e15d
mov qword [0x0059e048], rax
jmp 0x404a86
call fcn.004085f3
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.00427ddd
jmp 0x404a86
call fcn.0040874b
jmp 0x404a86
mov rax, qword [0x0059e048]
mov rdx, qword [rbp + 0x1b38]
mov rdx, qword [rdx]
mov qword [rax + 0x18], rdx
jmp 0x404a86
mov rax, qword [0x0059e048]
mov rdx, qword [rbp + 0x1b38]
mov rdx, qword [rdx]
mov qword [rax + 0x30], rdx
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [0x0059e048]
mov r8d, 0
mov rcx, rax
call fcn.00418895
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [0x0059e048]
mov r8d, 1
mov rcx, rax
call fcn.00418895
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rcx, rax
call fcn.0041a0cb
jmp 0x404a86
mov ecx, 0
call fcn.00424ae0
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.00424ae0
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.00424ae0
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.00424b04
jmp 0x404a86
mov ecx, 1
call fcn.0041a129
jmp 0x404a86
mov ecx, 0
call fcn.0041a129
jmp 0x404a86
mov qword [rbp - 0x20], 0
jmp 0x404a86
mov ecx, 0x10
call fcn.004fb406
mov qword [rbp + 0x1ac8], rax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1ac8]
mov qword [rax + 8], rdx
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1ac8]
mov qword [rax], rdx
mov rax, qword [rbp + 0x1ac8]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov ecx, 0x10
call fcn.004fb406
mov qword [rbp + 0x1ad0], rax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1ad0]
mov qword [rax + 8], rdx
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1ad0]
mov qword [rax], rdx
mov rax, qword [rbp + 0x1ad0]
mov qword [rbp - 0x20], rax
jmp 0x404a86
call fcn.004086f5
jmp 0x404a86
call fcn.0040874b
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x2d
call fcn.00423e59
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, qword [rbp + 0x1b38]
sub rdx, 0x60
mov rdx, qword [rdx]
mov ecx, edx
mov rdx, rax
call fcn.00423e59
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x21
call fcn.00423e59
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x7e
call fcn.00423e59
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x2a
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x2f
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x25
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x2b
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x2d
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x113
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x114
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x10f
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x110
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x111
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x112
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x3c
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x3e
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x26
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x5e
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x7c
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rcx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
add rax, 0xffffffffffffff80
mov rax, qword [rax]
mov r9, rcx
mov r8, rdx
mov rdx, rax
mov ecx, 0x3f
call fcn.00423da4
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x10e
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x10d
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x13b
call fcn.00423efa
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax + 8]
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.004214a3
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov edx, 0
mov ecx, 0x12b
call fcn.00423efa
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x142
call fcn.00423efa
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x141
call fcn.00423efa
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x143
call fcn.00423efa
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x144
call fcn.00423efa
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x182
call fcn.00423efa
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x160
call fcn.00423e59
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x117
call fcn.00423e59
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x117
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x124
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x125
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x126
call fcn.00423e59
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x103
call fcn.00423efa
mov rdx, rax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x131
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x117
call fcn.00423e59
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x103
call fcn.00423efa
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x145
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov r8, rdx
mov rdx, rax
mov ecx, 0x146
call fcn.00423cf0
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov rcx, rax
call fcn.00424083
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x14e
call fcn.00423efa
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x150
call fcn.00423efa
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0x167
call fcn.00423e59
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov qword [rbp - 0x20], 0
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov qword [rbp - 0x20], 0
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov qword [rbp - 0x20], 0
jmp 0x404a86
mov dword [rbp - 0x20], 0x180
jmp 0x404a86
mov dword [rbp - 0x20], 0
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov qword [rbp - 0x20], 0
jmp 0x404a86
mov dword [rbp - 0x20], 0x17c
jmp 0x404a86
mov dword [rbp - 0x20], 0x17d
jmp 0x404a86
mov dword [rbp - 0x20], 0x17e
jmp 0x404a86
mov dword [rbp - 0x20], 0
jmp 0x404a86
call fcn.004086f5
jmp 0x404a86
call fcn.0040874b
call fcn.004085f3
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
add rax, 0xffffffffffffff80
mov r10d, dword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov r9d, dword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0xc0
mov r8, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rcx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0xa0
mov rbx, qword [rax]
mov r11d, dword [0x0059e040]
mov rax, qword [rbp + 0x1b38]
sub rax, 0xe0
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x120
mov rax, qword [rax]
mov dword [rsp + 0x38], r10d
mov dword [rsp + 0x30], r9d
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x20], rcx
mov r9, rbx
mov r8d, r11d
mov rcx, rax
call fcn.00418b7f
jmp 0x404a86
call fcn.0040874b
call fcn.004086f5
jmp 0x404a86
call fcn.0040874b
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov r8, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rcx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov r9, r8
mov r8, rcx
mov rcx, rax
call fcn.0041a1e3
jmp 0x404a86
call fcn.004086f5
jmp 0x404a86
call fcn.0040874b
call fcn.004085f3
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0xa0
mov rax, qword [rax]
mov rcx, rax
call fcn.0041a976
jmp 0x404a86
call fcn.0040874b
call fcn.004086f5
jmp 0x404a86
call fcn.0040874b
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rcx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov r9, qword [rax]
mov rax, qword [rbp + 0x1b38]
mov r8, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x180
mov rax, qword [rax]
mov r10d, eax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x160
mov rax, qword [rax]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdx
mov edx, r10d
mov rcx, rax
call fcn.0041aca1
jmp 0x404a86
call fcn.004086f5
jmp 0x404a86
call fcn.0040874b
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov r8d, 0
mov rdx, rax
lea rcx, [0x00521256]
call fcn.00423fe5
mov rcx, rax
call fcn.0041a063
jmp 0x404a86
call fcn.004085f3
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.00427ddd
jmp 0x404a86
call fcn.0040874b
jmp 0x404a86
mov dword [0x0059e040], 2
jmp 0x404a86
mov dword [0x0059e040], 3
jmp 0x404a86
mov dword [0x0059e040], 3
jmp 0x404a86
mov dword [0x0059e040], 3
jmp 0x404a86
mov dword [0x0059e040], 3
jmp 0x404a86
mov dword [0x0059e040], 0
jmp 0x404a86
mov dword [0x0059e040], 0
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov qword [rbp - 0x20], 0
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0xe0
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov qword [rbp - 0x20], 0
jmp 0x404a86
mov qword [rbp - 0x20], 0
jmp 0x404a86
mov qword [rbp - 0x20], 1
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
lea rax, [0x00521258]
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov qword [rbp - 0x20], 0
jmp 0x404a86
mov ecx, 0x18
call fcn.004fb406
mov qword [rbp + 0x1ad8], rax
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1ad8]
mov qword [rax + 8], rdx
mov rax, qword [rbp + 0x1ad8]
mov dword [rax + 0x10], 0
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1ad8]
mov qword [rax], rdx
mov rax, qword [rbp + 0x1ad8]
mov qword [rbp - 0x20], rax
jmp 0x404a86
call fcn.004085f3
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.0041a9d8
jmp 0x404a86
call fcn.0040874b
call fcn.004086f5
jmp 0x404a86
call fcn.0040874b
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rcx, rax
call fcn.0041aad3
jmp 0x404a86
call fcn.004086f5
jmp 0x404a86
call fcn.0040874b
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov r8, qword [rax + 0x10]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rcx, qword [rax + 8]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov r9d, dword [rax + 4]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov r10d, dword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0xa0
mov rax, qword [rax]
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x20], rcx
mov r8d, r10d
mov rcx, rax
call fcn.0041a3e1
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov eax, dword [rax + 0x10]
cmp eax, 3
jne 0x404a85
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov eax, dword [rax]
cmp eax, 0x103
jne 0x404a85
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x1ae0], rax
mov dword [rbp + 0x1b1c], 0
jmp 0x40430a
mov eax, dword [rbp + 0x1b1c]
lea rdx, [rax*8]
lea rax, str.PT_NULL
mov rdx, qword [rdx + rax]
mov rax, qword [rbp + 0x1ae0]
mov rcx, rax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x404303
mov eax, dword [rbp + 0x1b1c]
mov rcx, rax
call fcn.00421432
mov qword [rbp - 0x20], rax
jmp 0x404313
add dword [rbp + 0x1b1c], 1
cmp dword [rbp + 0x1b1c], 7
jbe 0x4042c3
cmp dword [rbp + 0x1b1c], 8
jne 0x404a85
mov rax, qword [rbp + 0x1ae0]
lea rdx, [0x00521262]
mov rcx, rax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x40434d
mov ecx, 0x6474e550
call fcn.00421432
mov qword [rbp - 0x20], rax
jmp 0x404a85
mov rax, qword [rbp + 0x1ae0]
lea rdx, [0x00521272]
mov rcx, rax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x40437a
mov ecx, 0x6474e551
call fcn.00421432
mov qword [rbp - 0x20], rax
jmp 0x404a85
mov rax, qword [rbp + 0x1ae0]
mov r8, rax
mov edx, 0
lea rcx, [0x00521280]
call fcn.00426ada
mov ecx, 0
call fcn.00421432
mov qword [rbp - 0x20], rax
jmp 0x404a85
lea rax, [rbp - 0x20]
mov r8d, 0x18
mov edx, 0
mov rcx, rax
call sub.msvcrt.dll_memset
jmp 0x404a86
mov rcx, qword [rbp + 0x1b38]
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rdx
mov rax, qword [rcx + 0x10]
mov qword [rbp - 0x10], rax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
lea rdx, str.FILEHDR
mov rcx, rax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x404422
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
test rax, rax
jne 0x404422
mov dword [rbp - 0x20], 1
jmp 0x4044ce
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
lea rdx, str.PHDRS
mov rcx, rax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x40445f
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
test rax, rax
jne 0x40445f
mov dword [rbp - 0x1c], 1
jmp 0x4044ce
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
lea rdx, [0x005212c0]
mov rcx, rax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x4044a7
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
test rax, rax
je 0x4044a7
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x10], rax
jmp 0x4044ce
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8, rax
mov edx, 0
lea rcx, str._X_P:_pS:_PHDRS_syntax_error_at___s_n
call fcn.00426ada
jmp 0x404a86
jmp 0x404a86
mov rcx, qword [rbp + 0x1b38]
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rdx
mov rax, qword [rcx + 0x10]
mov qword [rbp - 0x10], rax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov qword [rbp - 0x18], rax
jmp 0x404a86
mov qword [rbp - 0x20], 0
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
jmp 0x404a86
call fcn.0040869f
mov eax, dword [0x0059e100]
cmp eax, 0x13
jg 0x40455e
mov eax, dword [0x0059e100]
cdqe
lea rcx, [rax*8]
lea rax, [0x0059e060]
lea rdx, [0x005212ee]
mov qword [rcx + rax], rdx
mov eax, dword [0x0059e100]
add eax, 1
mov dword [0x0059e100], eax
jmp 0x404a86
call fcn.0040874b
mov eax, dword [0x0059e100]
sub eax, 1
mov dword [0x0059e100], eax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rcx, rax
call fcn.0041c032
jmp 0x404a86
call fcn.0040869f
mov eax, dword [0x0059e100]
cmp eax, 0x13
jg 0x4045d8
mov eax, dword [0x0059e100]
cdqe
lea rcx, [rax*8]
lea rax, [0x0059e060]
lea rdx, str.VERSION_script
mov qword [rcx + rax], rdx
mov eax, dword [0x0059e100]
add eax, 1
mov dword [0x0059e100], eax
jmp 0x404a86
call fcn.0040874b
mov eax, dword [0x0059e100]
sub eax, 1
mov dword [0x0059e100], eax
jmp 0x404a86
call fcn.00408674
jmp 0x404a86
call fcn.0040874b
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r8d, 0
mov rdx, rax
mov ecx, 0
call fcn.0041b7fe
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
add rax, 0xffffffffffffff80
mov rax, qword [rax]
mov r8d, 0
mov rcx, rax
call fcn.0041b7fe
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rcx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0xa0
mov rax, qword [rax]
mov r8, rcx
mov rcx, rax
call fcn.0041b7fe
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0
call fcn.0041bc81
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rcx, rax
call fcn.0041bc81
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov edx, 0
mov ecx, 0
call fcn.0041b502
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov edx, 0
mov rcx, rax
call fcn.0041b502
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov edx, 0
mov rcx, rax
call fcn.0041b502
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov rdx, rax
mov ecx, 0
call fcn.0041b502
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0xa0
mov rax, qword [rax]
mov rcx, rax
call fcn.0041b502
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rdx, qword [0x0059e058]
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov r9d, 0
mov r8, rdx
mov rdx, rax
mov ecx, 0
call fcn.0041b396
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rdx, qword [0x0059e058]
mov rax, qword [rbp + 0x1b38]
mov rax, qword [rax]
mov r9d, 1
mov r8, rdx
mov rdx, rax
mov ecx, 0
call fcn.0041b396
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rcx, qword [0x0059e058]
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r9d, 0
mov r8, rcx
mov rcx, rax
call fcn.0041b396
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rcx, qword [0x0059e058]
mov rax, qword [rbp + 0x1b38]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r9d, 1
mov r8, rcx
mov rcx, rax
call fcn.0041b396
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [0x0059e058]
mov qword [rbp - 0x20], rax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov qword [0x0059e058], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov qword [rbp + 0x1b10], rax
jmp 0x4048c5
mov rax, qword [rbp + 0x1b10]
mov rax, qword [rax]
mov qword [rbp + 0x1b10], rax
mov rax, qword [rbp + 0x1b10]
mov rax, qword [rax]
test rax, rax
jne 0x4048b4
mov rax, qword [rbp + 0x1b38]
sub rax, 0x100
mov rdx, qword [rax]
mov rax, qword [rbp + 0x1b10]
mov qword [rax], rdx
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov qword [0x0059e058], rax
jmp 0x404a86
mov rax, qword [0x0059e058]
mov qword [rbp - 0x20], rax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x20
mov rax, qword [rax]
mov qword [0x0059e058], rax
jmp 0x404a86
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
mov rax, qword [rbp + 0x1b38]
sub rax, 0x60
mov rax, qword [rax]
mov qword [0x0059e058], rax
jmp 0x404a86
mov rax, qword [0x0059e058]
mov r9d, 0
mov r8, rax
lea rdx, [0x0052130a]
mov ecx, 0
call fcn.0041b396
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rdx, qword [0x0059e058]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r9d, 0
mov r8, rdx
lea rdx, [0x0052130a]
mov rcx, rax
call fcn.0041b396
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [0x0059e058]
mov r9d, 0
mov r8, rax
lea rdx, str.local
mov ecx, 0
call fcn.0041b396
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rdx, qword [0x0059e058]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r9d, 0
mov r8, rdx
lea rdx, str.local
mov rcx, rax
call fcn.0041b396
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rax, qword [0x0059e058]
mov r9d, 0
mov r8, rax
lea rdx, str.extern
mov ecx, 0
call fcn.0041b396
mov qword [rbp - 0x20], rax
jmp 0x404a86
mov rdx, qword [0x0059e058]
mov rax, qword [rbp + 0x1b38]
sub rax, 0x40
mov rax, qword [rax]
mov r9d, 0
mov r8, rdx
lea rdx, str.extern
mov rcx, rax
call fcn.0041b396
mov qword [rbp - 0x20], rax
jmp 0x404a86
nop
jmp 0x404a86
nop
lea rax, [0x005a3a44]
mov eax, dword [rax]
test eax, eax
je 0x404b08
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
lea r8, [0x0052131e]
lea rdx, [0x0052117a]
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov eax, dword [rbp + 0x1b2c]
cdqe
lea rdx, [rax + rax]
lea rax, [0x00520ca0]
movzx eax, word [rdx + rax]
movzx ebx, ax
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
lea rdx, [rbp - 0x20]
mov r8, rdx
mov edx, ebx
mov rcx, rax
call fcn.00401586
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
mov rdx, rax
mov ecx, 0xa
call sub.msvcrt.dll_fputc
mov eax, dword [rbp + 0x1b20]
cdqe
shl rax, 5
neg rax
add qword [rbp + 0x1b38], rax
mov eax, dword [rbp + 0x1b20]
cdqe
add rax, rax
neg rax
add qword [rbp + 0x1b48], rax
mov dword [rbp + 0x1b20], 0
lea rax, [0x005a3a44]
mov eax, dword [rax]
test eax, eax
je 0x404b60
mov rdx, qword [rbp + 0x1b48]
mov rax, qword [rbp + 0x1b50]
mov rcx, rax
call fcn.0040160a
add qword [rbp + 0x1b38], 0x20
mov rcx, qword [rbp + 0x1b38]
mov rax, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x18]
mov qword [rcx], rax
mov qword [rcx + 8], rdx
mov rax, qword [rbp - 0x10]
mov rdx, qword [rbp - 8]
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], rdx
mov eax, dword [rbp + 0x1b2c]
cdqe
lea rdx, [rax + rax]
lea rax, [0x00520ca0]
movzx eax, word [rdx + rax]
movzx eax, ax
mov dword [rbp + 0x1b2c], eax
mov eax, dword [rbp + 0x1b2c]
sub eax, 0x9c
cdqe
lea rdx, [rax + rax]
lea rax, [0x0051e540]
movzx eax, word [rdx + rax]
movsx edx, ax
mov rax, qword [rbp + 0x1b48]
movzx eax, word [rax]
cwde
add eax, edx
mov dword [rbp + 0x1b5c], eax
cmp dword [rbp + 0x1b5c], 0
js 0x404c3e
cmp dword [rbp + 0x1b5c], 0x7a8
jg 0x404c3e
mov eax, dword [rbp + 0x1b5c]
cdqe
lea rdx, [rax + rax]
lea rax, [0x0051f6e0]
movzx edx, word [rdx + rax]
mov rax, qword [rbp + 0x1b48]
movzx eax, word [rax]
cmp dx, ax
jne 0x404c3e
mov eax, dword [rbp + 0x1b5c]
cdqe
lea rdx, [rax + rax]
lea rax, [0x0051e780]
movzx eax, word [rdx + rax]
cwde
mov dword [rbp + 0x1b5c], eax
jmp 0x401937
mov eax, dword [rbp + 0x1b2c]
sub eax, 0x9c
cdqe
lea rdx, [rax + rax]
lea rax, [0x0051e660]
movzx eax, word [rdx + rax]
cwde
mov dword [rbp + 0x1b5c], eax
jmp 0x401937
nop
lea rax, [0x005a3a80]
mov eax, dword [rax]
cmp eax, 0xfffffffe
je 0x404ca8
lea rax, [0x005a3a80]
mov eax, dword [rax]
cmp eax, 0x183
ja 0x404ca1
lea rax, [0x005a3a80]
mov eax, dword [rax]
movsxd rdx, eax
lea rax, section..rdata
movzx eax, byte [rdx + rax]
movzx eax, al
jmp 0x404cad
mov eax, 2
jmp 0x404cad
mov eax, 0xfffffffe
mov dword [rbp + 0x1b24], eax
cmp dword [rbp + 0x1b58], 0
jne 0x404cdd
lea rax, [0x005a3a40]
mov eax, dword [rax]
lea edx, [rax + 1]
lea rax, [0x005a3a40]
mov dword [rax], edx
lea rcx, str.syntax_error
call fcn.00405097
cmp dword [rbp + 0x1b58], 3
jne 0x404d30
lea rax, [0x005a3a80]
mov eax, dword [rax]
test eax, eax
jg 0x404d05
lea rax, [0x005a3a80]
mov eax, dword [rax]
test eax, eax
jne 0x404d30
jmp 0x404f38
mov eax, dword [rbp + 0x1b24]
lea rdx, [0x005a3a60]
mov r8, rdx
mov edx, eax
lea rcx, str.Error:_discarding
call fcn.004017d8
lea rax, [0x005a3a80]
mov dword [rax], 0xfffffffe
nop
mov dword [rbp + 0x1b58], 3
mov eax, dword [rbp + 0x1b5c]
cdqe
lea rdx, [rax + rax]
lea rax, [0x0051d880]
movzx eax, word [rdx + rax]
cwde
mov dword [rbp + 0x1b2c], eax
cmp dword [rbp + 0x1b2c], 0xfffffd71
je 0x404dc9
add dword [rbp + 0x1b2c], 1
cmp dword [rbp + 0x1b2c], 0
js 0x404dc9
cmp dword [rbp + 0x1b2c], 0x7a8
jg 0x404dc9
mov eax, dword [rbp + 0x1b2c]
cdqe
lea rdx, [rax + rax]
lea rax, [0x0051f6e0]
movzx eax, word [rdx + rax]
cmp ax, 1
jne 0x404dc9
mov eax, dword [rbp + 0x1b2c]
cdqe
lea rdx, [rax + rax]
lea rax, [0x0051e780]
movzx eax, word [rdx + rax]
cwde
mov dword [rbp + 0x1b2c], eax
cmp dword [rbp + 0x1b2c], 0
jg 0x404e5c
mov rax, qword [rbp + 0x1b48]
cmp rax, qword [rbp + 0x1b50]
je 0x404f37
mov eax, dword [rbp + 0x1b5c]
cdqe
lea rdx, [rax + rax]
lea rax, [0x00520640]
movzx eax, word [rdx + rax]
movzx eax, ax
mov rdx, qword [rbp + 0x1b38]
mov r8, rdx
mov edx, eax
lea rcx, str.Error:_popping
call fcn.004017d8
sub qword [rbp + 0x1b38], 0x20
sub qword [rbp + 0x1b48], 2
mov rax, qword [rbp + 0x1b48]
movzx eax, word [rax]
cwde
mov dword [rbp + 0x1b5c], eax
lea rax, [0x005a3a44]
mov eax, dword [rax]
test eax, eax
je 0x404d3b
mov rdx, qword [rbp + 0x1b48]
mov rax, qword [rbp + 0x1b50]
mov rcx, rax
call fcn.0040160a
jmp 0x404d3b
nop
add qword [rbp + 0x1b38], 0x20
mov rcx, qword [rbp + 0x1b38]
lea r8, [0x005a3a60]
mov rax, qword [r8]
mov rdx, qword [r8 + 8]
mov qword [rcx], rax
mov qword [rcx + 8], rdx
mov rax, qword [r8 + 0x10]
mov rdx, qword [r8 + 0x18]
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], rdx
lea rax, [0x005a3a44]
mov eax, dword [rax]
test eax, eax
je 0x404f16
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
lea r8, str.Shifting
lea rdx, [0x0052117a]
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov eax, dword [rbp + 0x1b2c]
cdqe
lea rdx, [rax + rax]
lea rax, [0x00520640]
movzx eax, word [rdx + rax]
movzx ebx, ax
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
mov rdx, qword [rbp + 0x1b38]
mov r8, rdx
mov edx, ebx
mov rcx, rax
call fcn.00401586
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
mov rdx, rax
mov ecx, 0xa
call sub.msvcrt.dll_fputc
mov eax, dword [rbp + 0x1b2c]
mov dword [rbp + 0x1b5c], eax
jmp 0x401937
nop
mov dword [rbp + 0x1b28], 0
jmp 0x404f5e
nop
jmp 0x404f38
nop
mov dword [rbp + 0x1b28], 1
jmp 0x404f5e
nop
jmp 0x404f48
nop
lea rcx, [0x00521354]
call fcn.00405097
mov dword [rbp + 0x1b28], 2
lea rax, [0x005a3a80]
mov eax, dword [rax]
cmp eax, 0xfffffffe
je 0x404fc1
lea rax, [0x005a3a80]
mov eax, dword [rax]
cmp eax, 0x183
ja 0x404f98
lea rax, [0x005a3a80]
mov eax, dword [rax]
movsxd rdx, eax
lea rax, section..rdata
movzx eax, byte [rdx + rax]
movzx eax, al
jmp 0x404f9d
mov eax, 2
mov dword [rbp + 0x1b24], eax
mov eax, dword [rbp + 0x1b24]
lea rdx, [0x005a3a60]
mov r8, rdx
mov edx, eax
lea rcx, str.Cleanup:_discarding_lookahead
call fcn.004017d8
mov eax, dword [rbp + 0x1b20]
cdqe
shl rax, 5
neg rax
add qword [rbp + 0x1b38], rax
mov eax, dword [rbp + 0x1b20]
cdqe
add rax, rax
neg rax
add qword [rbp + 0x1b48], rax
lea rax, [0x005a3a44]
mov eax, dword [rax]
test eax, eax
je 0x405058
mov rdx, qword [rbp + 0x1b48]
mov rax, qword [rbp + 0x1b50]
mov rcx, rax
call fcn.0040160a
jmp 0x405058
mov rax, qword [rbp + 0x1b48]
movzx eax, word [rax]
cwde
cdqe
lea rdx, [rax + rax]
lea rax, [0x00520640]
movzx eax, word [rdx + rax]
movzx eax, ax
mov rdx, qword [rbp + 0x1b38]
mov r8, rdx
mov edx, eax
lea rcx, str.Cleanup:_popping
call fcn.004017d8
sub qword [rbp + 0x1b38], 0x20
sub qword [rbp + 0x1b48], 2
mov rax, qword [rbp + 0x1b48]
cmp rax, qword [rbp + 0x1b50]
jne 0x405011
lea rax, [rbp + 0x1900]
cmp qword [rbp + 0x1b50], rax
je 0x405087
mov rax, qword [rbp + 0x1b50]
mov rcx, rax
call sub.msvcrt.dll_free
mov eax, dword [rbp + 0x1b28]
add rsp, 0x1be8
pop rbx
pop rbp
ret