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

Disassembly:
push rbp
sub rsp, 0x4f0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x480], rcx
mov qword [rbp + 0x488], rdx
mov qword [rbp + 0x440], 0
mov qword [rbp + 0x428], 0
mov qword [rbp + 0x420], 0
mov qword [rbp + 0x418], 0
mov qword [rbp + 0x400], 0
mov qword [rbp + 0x3f8], 0
mov dword [rbp + 0x3f4], 0
mov dword [rbp + 0x3f0], 0
mov qword [rbp + 0x3e8], 0
mov qword [rbp + 0x3d8], 0
mov qword [rbp + 0x3d0], 0
mov qword [rbp + 0x3c8], 0
mov qword [rbp + 0x3c0], 0
mov rax, qword [rbp + 0x488]
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x260], rax
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 8]
mov rax, qword [rax + 0x368]
mov qword [rbp + 0x258], rax
mov rax, qword [rbp + 0x480]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x40
test eax, eax
jne 0x45b0b5
mov dword [rbp + 0x44c], 0
jmp 0x45b12d
mov dword [rbp + 0x44c], 1
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
je 0x45b0fe
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x40]
cmp eax, 1
jne 0x45b0fe
mov rax, qword [rbp + 0x488]
mov rax, qword [rax + 0x50]
mov rdx, qword [rax + 8]
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 8]
cmp rdx, rax
je 0x45b12d
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
jne 0x45b11e
mov ecx, 5
call fcn.0040b4dd
jmp 0x45f131
mov ecx, 3
call fcn.0040b4dd
jmp 0x45f131
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov qword [rbp + 0x250], rax
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 6]
and eax, 8
test al, al
je 0x45b208
mov rax, qword [rbp + 0x258]
mov edx, dword [rax + 8]
mov rax, qword [rbp + 0x250]
movzx eax, word [rax + 0x32]
movzx eax, ax
cmp edx, eax
je 0x45b208
mov rax, qword [rbp + 0x258]
mov eax, dword [rax + 0x2f8]
test eax, eax
je 0x45b1a8
mov rax, qword [rbp + 0x250]
movzx eax, word [rax + 0x32]
movzx edx, ax
mov rax, qword [rbp + 0x258]
mov eax, dword [rax + 0x2f8]
cmp edx, eax
je 0x45b1d8
mov rax, qword [rbp + 0x258]
mov eax, dword [rax + 0x2fc]
test eax, eax
je 0x45b208
mov rax, qword [rbp + 0x250]
movzx eax, word [rax + 0x32]
movzx edx, ax
mov rax, qword [rbp + 0x258]
mov eax, dword [rax + 0x2fc]
cmp edx, eax
jne 0x45b208
mov rax, qword [rbp + 0x258]
mov edx, dword [rax + 8]
mov rax, qword [rbp + 0x250]
movzx eax, word [rax + 0x32]
movzx eax, ax
mov r9d, edx
mov r8, qword [rbp + 0x480]
mov edx, eax
lea rcx, str.alternate_ELF_machine_code_found___d__in__pB__expecting__d
call fcn.0040c971
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0x88]
mov qword [rbp + 0x3b8], rax
jmp 0x45b42f
mov rax, qword [rbp + 0x3b8]
mov rax, qword [rax]
mov qword [rbp + 0xa8], rax
mov rax, qword [rbp + 0xa8]
mov r8d, 0xd
lea rdx, str..gnu.warning.
mov rcx, rax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x45b41d
add qword [rbp + 0xa8], 0xd
cmp dword [rbp + 0x44c], 0
je 0x45b2c9
mov rax, qword [rbp + 0x260]
mov rdx, qword [rbp + 0xa8]
mov dword [rsp + 0x20], 1
mov r9d, 0
mov r8d, 0
mov rcx, rax
call fcn.0048a3ab
mov qword [rbp + 0xa0], rax
cmp qword [rbp + 0xa0], 0
je 0x45b2c9
mov rax, qword [rbp + 0xa0]
movzx eax, byte [rax + 0x18]
cmp al, 3
je 0x45b41c
mov rax, qword [rbp + 0xa0]
movzx eax, byte [rax + 0x18]
cmp al, 4
je 0x45b41c
mov rax, qword [rbp + 0x3b8]
mov rax, qword [rax + 0x38]
mov qword [rbp + 0x98], rax
mov rax, qword [rbp + 0x98]
add rax, 1
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0041439f
mov qword [rbp + 0x90], rax
cmp qword [rbp + 0x90], 0
je 0x45f115
mov rcx, qword [rbp + 0x90]
mov rax, qword [rbp + 0x3b8]
mov rdx, qword [rbp + 0x98]
mov qword [rsp + 0x20], rdx
mov r9d, 0
mov r8, rcx
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0041653e
test eax, eax
je 0x45f118
mov rdx, qword [rbp + 0x90]
mov rax, qword [rbp + 0x98]
add rax, rdx
mov byte [rax], 0
mov rax, qword [rbp + 0x258]
movzx eax, byte [rax + 0x38c]
and eax, 1
movzx edx, al
mov rcx, qword [rbp + 0xa8]
mov rax, qword [rbp + 0x488]
mov qword [rsp + 0x48], 0
mov dword [rsp + 0x40], edx
mov dword [rsp + 0x38], 0
mov rdx, qword [rbp + 0x90]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], 0
mov rdx, qword [rbp + 0x3b8]
mov qword [rsp + 0x20], rdx
mov r9d, 0x1000
mov r8, rcx
mov rdx, qword [rbp + 0x480]
mov rcx, rax
call fcn.0048b709
test eax, eax
je 0x45f11b
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
test al, al
je 0x45b3f2
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 1
jne 0x45b41d
mov rax, qword [rbp + 0x3b8]
mov qword [rax + 0x38], 0
mov rax, qword [rbp + 0x3b8]
mov eax, dword [rax + 0x20]
or ah, 0x80
mov edx, eax
mov rax, qword [rbp + 0x3b8]
mov dword [rax + 0x20], edx
jmp 0x45b41d
nop
mov rax, qword [rbp + 0x3b8]
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x3b8], rax
cmp qword [rbp + 0x3b8], 0
jne 0x45b222
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0x88]
mov qword [rbp + 0x3b8], rax
cmp qword [rbp + 0x3b8], 0
je 0x45b478
mov rax, qword [rbp + 0x3b8]
movzx eax, word [rax + 0x24]
and ax, 0x380
cmp ax, 0x200
jne 0x45b478
mov eax, 1
jmp 0x45b47d
mov eax, 0
mov dword [rbp + 0x24c], eax
mov dword [rbp + 0x40c], 1
cmp dword [rbp + 0x44c], 0
jne 0x45b586
cmp dword [rbp + 0x24c], 0
jne 0x45be8d
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 3
je 0x45b51b
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 1
je 0x45b51b
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
je 0x45be8d
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 7]
and eax, 8
test al, al
je 0x45be8d
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 0x10
test al, al
jne 0x45b51b
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 5]
and eax, 0x40
test al, al
je 0x45be8d
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x40]
cmp eax, 1
jne 0x45be8d
mov rax, qword [rbp + 0x488]
mov rax, qword [rax + 0x50]
mov rdx, qword [rax + 8]
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 8]
cmp rdx, rax
jne 0x45be8d
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x4c]
test eax, eax
jne 0x45be8d
mov rax, qword [rbp + 0x488]
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0045496d
test eax, eax
jne 0x45be8d
jmp 0x45f131
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x40]
cmp eax, 1
jne 0x45f11e
mov qword [rbp + 0x3b0], 0
mov qword [rbp + 0x3a8], 0
mov qword [rbp + 0x88], 0
mov qword [rbp + 0x80], 0
cmp dword [rbp + 0x24c], 0
je 0x45b5e6
lea r8, str.elf_link_add_object_symbols
mov edx, 0xfc9
lea rcx, str._workdir_repo_binutils_gdb_gnu_bfd_elflink.c
call fcn.0040cbf2
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
movzx eax, word [rax + 0xc84]
shr ax, 6
and eax, 0xf
movzx eax, al
and eax, 0xb
test eax, eax
sete al
movzx eax, al
mov dword [rbp + 0x40c], eax
lea rdx, str..dynamic
mov rcx, qword [rbp + 0x480]
call fcn.00415b32
mov qword [rbp + 0x3b8], rax
cmp qword [rbp + 0x3b8], 0
je 0x45bbf4
lea rdx, [rbp + 0x78]
mov rax, qword [rbp + 0x3b8]
mov r8, rdx
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.004166da
test eax, eax
jne 0x45b683
nop
jmp 0x45b672
nop
jmp 0x45b672
nop
jmp 0x45b672
nop
jmp 0x45b672
nop
jmp 0x45b672
nop
jmp 0x45b672
nop
mov rax, qword [rbp + 0x78]
mov rcx, rax
call sub.msvcrt.dll_free
jmp 0x45f131
mov rax, qword [rbp + 0x3b8]
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.00448dbc
mov dword [rbp + 0x248], eax
cmp dword [rbp + 0x248], 0xfffffeff
je 0x45b662
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x50]
mov edx, dword [rbp + 0x248]
shl rdx, 3
add rax, rdx
mov rax, qword [rax]
mov eax, dword [rax + 0x28]
mov dword [rbp + 0x244], eax
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x398], rax
jmp 0x45bbc9
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0x300]
mov rax, qword [rax + 0x50]
lea rcx, [rbp + 0x60]
mov rdx, qword [rbp + 0x398]
mov r8, rcx
mov rcx, qword [rbp + 0x480]
call rax
mov rax, qword [rbp + 0x60]
cmp rax, 0xe
jne 0x45b755
mov rax, qword [rbp + 0x68]
mov dword [rbp + 0x240], eax
mov edx, dword [rbp + 0x240]
mov eax, dword [rbp + 0x244]
mov r8d, edx
mov edx, eax
mov rcx, qword [rbp + 0x480]
call fcn.0043a8db
mov qword [rbp + 0x3b0], rax
cmp qword [rbp + 0x3b0], 0
je 0x45b665
mov rax, qword [rbp + 0x60]
cmp rax, 1
jne 0x45b8b3
mov rax, qword [rbp + 0x68]
mov dword [rbp + 0x23c], eax
mov qword [rbp + 0x230], 0x18
mov rax, qword [rbp + 0x230]
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0041439f
mov qword [rbp + 0x228], rax
mov edx, dword [rbp + 0x23c]
mov eax, dword [rbp + 0x244]
mov r8d, edx
mov edx, eax
mov rcx, qword [rbp + 0x480]
call fcn.0043a8db
mov qword [rbp + 0x220], rax
cmp qword [rbp + 0x228], 0
je 0x45b668
cmp qword [rbp + 0x220], 0
je 0x45b668
mov rax, qword [rbp + 0x220]
mov rcx, rax
call sub.msvcrt.dll_strlen
add rax, 1
mov qword [rbp + 0x230], rax
mov rax, qword [rbp + 0x230]
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0041439f
mov qword [rbp + 0x218], rax
cmp qword [rbp + 0x218], 0
je 0x45b66b
mov rcx, qword [rbp + 0x230]
mov rdx, qword [rbp + 0x220]
mov rax, qword [rbp + 0x218]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x228]
mov rdx, qword [rbp + 0x218]
mov qword [rax + 0x10], rdx
mov rax, qword [rbp + 0x228]
mov rdx, qword [rbp + 0x480]
mov qword [rax + 8], rdx
mov rax, qword [rbp + 0x228]
mov qword [rax], 0
mov rax, qword [rbp + 0x260]
add rax, 0xb8
mov qword [rbp + 0x390], rax
jmp 0x45b893
mov rax, qword [rbp + 0x390]
mov rax, qword [rax]
mov qword [rbp + 0x390], rax
mov rax, qword [rbp + 0x390]
mov rax, qword [rax]
test rax, rax
jne 0x45b882
mov rax, qword [rbp + 0x390]
mov rdx, qword [rbp + 0x228]
mov qword [rax], rdx
mov rax, qword [rbp + 0x60]
cmp rax, 0x1d
jne 0x45ba0b
mov rax, qword [rbp + 0x68]
mov dword [rbp + 0x214], eax
mov qword [rbp + 0x230], 0x18
mov rax, qword [rbp + 0x230]
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0041439f
mov qword [rbp + 0x208], rax
mov edx, dword [rbp + 0x214]
mov eax, dword [rbp + 0x244]
mov r8d, edx
mov edx, eax
mov rcx, qword [rbp + 0x480]
call fcn.0043a8db
mov qword [rbp + 0x200], rax
cmp qword [rbp + 0x208], 0
je 0x45b668
cmp qword [rbp + 0x200], 0
je 0x45b668
mov rax, qword [rbp + 0x200]
mov rcx, rax
call sub.msvcrt.dll_strlen
add rax, 1
mov qword [rbp + 0x230], rax
mov rax, qword [rbp + 0x230]
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0041439f
mov qword [rbp + 0x1f8], rax
cmp qword [rbp + 0x1f8], 0
je 0x45b66e
mov rcx, qword [rbp + 0x230]
mov rdx, qword [rbp + 0x200]
mov rax, qword [rbp + 0x1f8]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x208]
mov rdx, qword [rbp + 0x1f8]
mov qword [rax + 0x10], rdx
mov rax, qword [rbp + 0x208]
mov rdx, qword [rbp + 0x480]
mov qword [rax + 8], rdx
mov rax, qword [rbp + 0x208]
mov qword [rax], 0
lea rax, [rbp + 0x80]
mov qword [rbp + 0x388], rax
jmp 0x45b9eb
mov rax, qword [rbp + 0x388]
mov rax, qword [rax]
mov qword [rbp + 0x388], rax
mov rax, qword [rbp + 0x388]
mov rax, qword [rax]
test rax, rax
jne 0x45b9da
mov rax, qword [rbp + 0x388]
mov rdx, qword [rbp + 0x208]
mov qword [rax], rdx
mov rax, qword [rbp + 0x80]
test rax, rax
jne 0x45bb73
mov rax, qword [rbp + 0x60]
cmp rax, 0xf
jne 0x45bb73
mov rax, qword [rbp + 0x68]
mov dword [rbp + 0x1f4], eax
mov qword [rbp + 0x230], 0x18
mov rax, qword [rbp + 0x230]
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0041439f
mov qword [rbp + 0x1e8], rax
mov edx, dword [rbp + 0x1f4]
mov eax, dword [rbp + 0x244]
mov r8d, edx
mov edx, eax
mov rcx, qword [rbp + 0x480]
call fcn.0043a8db
mov qword [rbp + 0x1e0], rax
cmp qword [rbp + 0x1e8], 0
je 0x45b668
cmp qword [rbp + 0x1e0], 0
je 0x45b668
mov rax, qword [rbp + 0x1e0]
mov rcx, rax
call sub.msvcrt.dll_strlen
add rax, 1
mov qword [rbp + 0x230], rax
mov rax, qword [rbp + 0x230]
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0041439f
mov qword [rbp + 0x1d8], rax
cmp qword [rbp + 0x1d8], 0
je 0x45b671
mov rcx, qword [rbp + 0x230]
mov rdx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x1d8]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x1e8]
mov rdx, qword [rbp + 0x1d8]
mov qword [rax + 0x10], rdx
mov rax, qword [rbp + 0x1e8]
mov rdx, qword [rbp + 0x480]
mov qword [rax + 8], rdx
mov rax, qword [rbp + 0x1e8]
mov qword [rax], 0
lea rax, [rbp + 0x88]
mov qword [rbp + 0x380], rax
jmp 0x45bb53
mov rax, qword [rbp + 0x380]
mov rax, qword [rax]
mov qword [rbp + 0x380], rax
mov rax, qword [rbp + 0x380]
mov rax, qword [rax]
test rax, rax
jne 0x45bb42
mov rax, qword [rbp + 0x380]
mov rdx, qword [rbp + 0x1e8]
mov qword [rax], rdx
mov rax, qword [rbp + 0x60]
cmp rax, 0x6ffffefc
jne 0x45bbad
mov rax, qword [rbp + 0x68]
mov dword [rbp + 0x1d4], eax
mov edx, dword [rbp + 0x1d4]
mov eax, dword [rbp + 0x244]
mov r8d, edx
mov edx, eax
mov rcx, qword [rbp + 0x480]
call fcn.0043a8db
mov qword [rbp + 0x3a8], rax
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0x300]
movzx eax, byte [rax + 6]
movzx eax, al
add qword [rbp + 0x398], rax
mov rdx, qword [rbp + 0x78]
mov rax, qword [rbp + 0x3b8]
mov rax, qword [rax + 0x38]
add rax, rdx
cmp qword [rbp + 0x398], rax
jb 0x45b6e6
mov rax, qword [rbp + 0x78]
mov rcx, rax
call sub.msvcrt.dll_free
mov rax, qword [rbp + 0x80]
test rax, rax
je 0x45bc0e
mov rax, qword [rbp + 0x80]
mov qword [rbp + 0x88], rax
mov rax, qword [rbp + 0x88]
test rax, rax
je 0x45bc61
mov rax, qword [rbp + 0x260]
add rax, 0x158
mov qword [rbp + 0x378], rax
jmp 0x45bc41
mov rax, qword [rbp + 0x378]
mov rax, qword [rax]
mov qword [rbp + 0x378], rax
mov rax, qword [rbp + 0x378]
mov rax, qword [rax]
test rax, rax
jne 0x45bc30
mov rdx, qword [rbp + 0x88]
mov rax, qword [rbp + 0x378]
mov qword [rax], rdx
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rdx, qword [rax + 0x58]
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0x3c]
mov ecx, eax
mov rax, rcx
shl rax, 3
sub rax, rcx
shl rax, 3
add rax, rdx
mov qword [rbp + 0x3a0], rax
jmp 0x45bd70
mov rax, qword [rbp + 0x3a0]
mov eax, dword [rax]
cmp eax, 0x6474e552
jne 0x45bd70
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0x88]
mov qword [rbp + 0x3b8], rax
jmp 0x45bd60
mov rax, qword [rbp + 0x3b8]
mov eax, dword [rax + 0x20]
and eax, 1
test eax, eax
je 0x45bd4e
mov rax, qword [rbp + 0x3b8]
mov rdx, qword [rax + 0x28]
mov rax, qword [rbp + 0x3a0]
mov rax, qword [rax + 0x10]
cmp rdx, rax
jb 0x45bd4e
mov rax, qword [rbp + 0x3b8]
mov rdx, qword [rax + 0x28]
mov rax, qword [rbp + 0x3b8]
mov rax, qword [rax + 0x38]
lea rcx, [rdx + rax]
mov rax, qword [rbp + 0x3a0]
mov rdx, qword [rax + 0x10]
mov rax, qword [rbp + 0x3a0]
mov rax, qword [rax + 0x28]
add rax, rdx
cmp rcx, rax
ja 0x45bd4e
mov rax, qword [rbp + 0x3b8]
mov eax, dword [rax + 0x20]
or eax, 8
mov edx, eax
mov rax, qword [rbp + 0x3b8]
mov dword [rax + 0x20], edx
mov rax, qword [rbp + 0x3b8]
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x3b8], rax
cmp qword [rbp + 0x3b8], 0
jne 0x45bcd1
jmp 0x45bd9d
mov rax, qword [rbp + 0x3a0]
lea rdx, [rax - 0x38]
mov qword [rbp + 0x3a0], rdx
mov rdx, qword [rbp + 0x480]
mov rdx, qword [rdx + 0xf0]
mov rdx, qword [rdx + 0x58]
cmp rax, rdx
ja 0x45bca3
mov rcx, qword [rbp + 0x480]
call fcn.00415abf
cmp qword [rbp + 0x3b0], 0
je 0x45bdc1
mov rax, qword [rbp + 0x3b0]
movzx eax, byte [rax]
test al, al
jne 0x45be06
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x308]
mov qword [rbp + 0x3b0], rax
cmp qword [rbp + 0x3b0], 0
je 0x45bdf5
mov rax, qword [rbp + 0x3b0]
movzx eax, byte [rax]
test al, al
jne 0x45be06
mov rax, qword [rbp + 0x480]
mov rax, qword [rax]
mov qword [rbp + 0x3b0], rax
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rdx, qword [rbp + 0x3b0]
mov qword [rax + 0x308], rdx
mov ecx, dword [rbp + 0x40c]
mov rdx, qword [rbp + 0x3b0]
mov rax, qword [rbp + 0x488]
mov r9d, ecx
mov r8, rdx
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0045a4de
mov dword [rbp + 0x1d0], eax
cmp dword [rbp + 0x1d0], 0
js 0x45f121
cmp dword [rbp + 0x1d0], 0
jle 0x45be71
mov eax, 1
jmp 0x45f136
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rdx, qword [rbp + 0x3a8]
mov qword [rax + 0x310], rdx
cmp dword [rbp + 0x44c], 0
je 0x45beae
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0xc74]
test eax, eax
jne 0x45bec9
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
add rax, 0x60
mov qword [rbp + 0x468], rax
jmp 0x45bee4
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
add rax, 0x150
mov qword [rbp + 0x468], rax
mov rax, qword [rbp + 0x468]
mov rax, qword [rax + 0x20]
mov rdx, qword [rbp + 0x258]
mov rdx, qword [rdx + 0x300]
movzx edx, byte [rdx + 5]
movzx ecx, dl
mov edx, 0
div rcx
mov qword [rbp + 0x1c8], rax
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
movzx eax, byte [rax + 0xc85]
and eax, 0x40
test al, al
je 0x45bf4a
mov rax, qword [rbp + 0x1c8]
mov qword [rbp + 0x460], rax
mov qword [rbp + 0x458], 0
jmp 0x45bf7a
mov rax, qword [rbp + 0x468]
mov eax, dword [rax + 0x2c]
mov edx, eax
mov rax, qword [rbp + 0x1c8]
sub rax, rdx
mov qword [rbp + 0x460], rax
mov rax, qword [rbp + 0x468]
mov eax, dword [rax + 0x2c]
mov eax, eax
mov qword [rbp + 0x458], rax
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x2f8]
mov qword [rbp + 0x450], rax
cmp qword [rbp + 0x460], 0
je 0x45c065
mov rcx, qword [rbp + 0x458]
mov rdx, qword [rbp + 0x460]
mov rax, qword [rbp + 0x468]
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, rcx
mov r8, rdx
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0043aa4d
mov qword [rbp + 0x418], rax
cmp qword [rbp + 0x418], 0
je 0x45f124
cmp qword [rbp + 0x450], 0
jne 0x45c065
mov rax, qword [rbp + 0x460]
mov qword [rbp + 0x230], rax
shl qword [rbp + 0x230], 3
mov rax, qword [rbp + 0x230]
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.004144f9
mov qword [rbp + 0x450], rax
cmp qword [rbp + 0x450], 0
je 0x45f0f0
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rdx, qword [rbp + 0x450]
mov qword [rax + 0x2f8], rdx
cmp dword [rbp + 0x44c], 0
je 0x45c15c
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 4]
shr al, 7
movzx eax, al
mov edx, eax
mov rcx, qword [rbp + 0x480]
call fcn.0044d557
test eax, eax
je 0x45f0f3
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0xc78]
test eax, eax
je 0x45c15c
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
add rax, 0x1f0
mov qword [rbp + 0x1c0], rax
mov rax, qword [rbp + 0x1c0]
mov rax, qword [rax + 0x20]
mov rcx, rax
call fcn.00412093
mov qword [rbp + 0x440], rax
cmp qword [rbp + 0x440], 0
je 0x45f0f6
mov rax, qword [rbp + 0x1c0]
mov rax, qword [rax + 0x20]
mov qword [rbp + 0x230], rax
mov rax, qword [rbp + 0x1c0]
mov rax, qword [rax + 0x18]
mov r8d, 0
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0040e67d
test eax, eax
jne 0x45f05f
mov rdx, qword [rbp + 0x230]
mov rax, qword [rbp + 0x440]
mov r8, qword [rbp + 0x480]
mov rcx, rax
call fcn.0040e2a7
cmp qword [rbp + 0x230], rax
jne 0x45f05f
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
movzx eax, word [rax + 0xc84]
shr ax, 6
and eax, 0xf
movzx eax, al
and eax, 1
test eax, eax
je 0x45c495
mov qword [rbp + 0x368], 0
mov dword [rbp + 0x374], 0
jmp 0x45c228
mov rax, qword [rbp + 0x260]
mov rax, qword [rax]
mov edx, dword [rbp + 0x374]
shl rdx, 3
add rax, rdx
mov rax, qword [rax]
mov qword [rbp + 0x360], rax
jmp 0x45c217
mov rax, qword [rbp + 0x360]
mov qword [rbp + 0x1b0], rax
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x20]
mov eax, eax
add qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x1b0]
movzx eax, byte [rax + 0x18]
cmp al, 7
jne 0x45c206
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x20]
mov eax, eax
add qword [rbp + 0x368], rax
mov rax, qword [rbp + 0x360]
mov rax, qword [rax]
mov qword [rbp + 0x360], rax
cmp qword [rbp + 0x360], 0
jne 0x45c1c3
add dword [rbp + 0x374], 1
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x18]
cmp dword [rbp + 0x374], eax
jb 0x45c1a0
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x18]
mov eax, eax
shl rax, 3
mov qword [rbp + 0x3c0], rax
mov rdx, qword [rbp + 0x3c0]
mov rax, qword [rbp + 0x368]
add rax, rdx
mov rcx, rax
call fcn.00412093
mov qword [rbp + 0x3e8], rax
cmp qword [rbp + 0x3e8], 0
je 0x45f062
mov rax, qword [rbp + 0x260]
mov edx, 1
mov rcx, rax
call fcn.004117f9
mov qword [rbp + 0x400], rax
cmp qword [rbp + 0x400], 0
je 0x45f065
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0xf8]
mov rdx, qword [rbp + 0x488]
mov r8d, 0
mov rcx, qword [rbp + 0x480]
call rax
test eax, eax
je 0x45f068
mov rdx, qword [rbp + 0x3e8]
mov rax, qword [rbp + 0x3c0]
add rax, rdx
mov qword [rbp + 0x3e0], rax
mov rax, qword [rbp + 0x260]
mov rdx, qword [rax]
mov rcx, qword [rbp + 0x3c0]
mov rax, qword [rbp + 0x3e8]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x260]
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x3d8], rax
mov rax, qword [rbp + 0x260]
mov rax, qword [rax + 0x30]
mov qword [rbp + 0x3d0], rax
mov rax, qword [rbp + 0x260]
mov rax, qword [rax]
mov qword [rbp + 0x3f8], rax
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x18]
mov dword [rbp + 0x3f4], eax
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x1c]
mov dword [rbp + 0x3f0], eax
mov rax, qword [rbp + 0x260]
mov rax, qword [rax + 0x90]
mov rcx, rax
call fcn.00477108
mov qword [rbp + 0x3c8], rax
cmp qword [rbp + 0x3c8], 0
je 0x45f06b
mov dword [rbp + 0x374], 0
jmp 0x45c47f
mov rax, qword [rbp + 0x260]
mov rax, qword [rax]
mov edx, dword [rbp + 0x374]
shl rdx, 3
add rax, rdx
mov rax, qword [rax]
mov qword [rbp + 0x358], rax
jmp 0x45c46a
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x20]
mov ecx, eax
mov rdx, qword [rbp + 0x358]
mov rax, qword [rbp + 0x3e0]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x20]
mov eax, eax
add qword [rbp + 0x3e0], rax
mov rax, qword [rbp + 0x358]
mov qword [rbp + 0x1b8], rax
mov rax, qword [rbp + 0x1b8]
movzx eax, byte [rax + 0x18]
cmp al, 7
jne 0x45c459
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x20]
mov ecx, eax
mov rax, qword [rbp + 0x1b8]
mov rdx, qword [rax + 0x28]
mov rax, qword [rbp + 0x3e0]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x20]
mov eax, eax
add qword [rbp + 0x3e0], rax
mov rax, qword [rbp + 0x358]
mov rax, qword [rax]
mov qword [rbp + 0x358], rax
cmp qword [rbp + 0x358], 0
jne 0x45c3c8
add dword [rbp + 0x374], 1
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x18]
cmp dword [rbp + 0x374], eax
jb 0x45c3a2
mov qword [rbp + 0x430], 0
cmp qword [rbp + 0x440], 0
je 0x45c4c1
mov rax, qword [rbp + 0x458]
lea rdx, [rax + rax]
mov rax, qword [rbp + 0x440]
add rax, rdx
jmp 0x45c4c6
mov eax, 0
mov qword [rbp + 0x438], rax
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x410], rax
mov rax, qword [rbp + 0x460]
shl rax, 5
mov rdx, rax
mov rax, qword [rbp + 0x418]
add rax, rdx
mov qword [rbp + 0x1a8], rax
jmp 0x45de37
mov dword [rbp + 0x30], 0
mov dword [rbp + 0x4c], 0
mov qword [rbp + 0x50], 0
mov rax, qword [rbp + 0x410]
mov rax, qword [rax]
mov qword [rbp + 0x58], rax
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0x2a0]
mov rdx, qword [rbp + 0x410]
mov rcx, rdx
call rax
mov dword [rbp + 0x348], eax
cmp dword [rbp + 0x348], 0
je 0x45c576
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 7]
and eax, 0x40
test al, al
je 0x45c576
mov rax, qword [rbp + 0x410]
mov dword [rax + 0x18], 0
mov dword [rbp + 0x348], 0
mov dword [rbp + 0x344], 0
mov rax, qword [rbp + 0x410]
movzx eax, byte [rax + 0x14]
shr al, 4
movzx eax, al
mov dword [rbp + 0x108], eax
mov eax, dword [rbp + 0x108]
cmp eax, 1
je 0x45c5bd
cmp eax, 1
jg 0x45c5b1
test eax, eax
je 0x45ddfd
jmp 0x45c5f0
cmp eax, 2
je 0x45c5dd
cmp eax, 0xa
je 0x45c5e6
jmp 0x45c5f0
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
test eax, eax
je 0x45c5ef
cmp dword [rbp + 0x348], 0
jne 0x45c5ef
mov dword [rbp + 0x4c], 2
jmp 0x45c5ef
mov dword [rbp + 0x4c], pe_nt_image_headers64
jmp 0x45c5f0
mov dword [rbp + 0x4c], 0x800000
jmp 0x45c5f0
nop
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
test eax, eax
jne 0x45c614
mov rax, qword [0x00519620]
add rax, 0x118
mov qword [rbp + 0x50], rax
jmp 0x45c752
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
cmp eax, 0xfffffff1
jne 0x45c639
mov rax, qword [0x00519620]
add rax, 0x230
mov qword [rbp + 0x50], rax
jmp 0x45c752
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
cmp eax, 0xfffffff2
jne 0x45c667
mov rax, qword [0x00519620]
mov qword [rbp + 0x50], rax
mov rax, qword [rbp + 0x410]
mov rax, qword [rax + 8]
mov qword [rbp + 0x58], rax
jmp 0x45c752
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
mov edx, eax
mov rcx, qword [rbp + 0x480]
call fcn.00440206
mov qword [rbp + 0x50], rax
mov rax, qword [rbp + 0x50]
test rax, rax
jne 0x45c6a2
mov rax, qword [0x00519620]
add rax, 0x230
mov qword [rbp + 0x50], rax
jmp 0x45c752
mov rax, qword [rbp + 0x50]
mov rdx, qword [0x00519620]
add rdx, 0x230
cmp rax, rdx
je 0x45c723
mov rax, qword [rbp + 0x50]
mov rax, qword [rax + 0x68]
mov rdx, qword [0x00519620]
add rdx, 0x230
cmp rax, rdx
jne 0x45c723
mov rax, qword [rbp + 0x50]
movzx eax, word [rax + 0x24]
and ax, 0x380
cmp ax, 0x100
je 0x45c723
mov rax, qword [rbp + 0x50]
movzx eax, word [rax + 0x24]
and ax, 0x380
cmp ax, 0x200
je 0x45c723
mov rax, qword [0x00519620]
add rax, 0x118
mov qword [rbp + 0x50], rax
mov dword [rbp + 0x344], 1
mov rax, qword [rbp + 0x410]
mov dword [rax + 0x18], 0
jmp 0x45c752
mov rax, qword [rbp + 0x480]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x42
test eax, eax
je 0x45c752
mov rdx, qword [rbp + 0x58]
mov rax, qword [rbp + 0x50]
mov rax, qword [rax + 0x28]
sub rdx, rax
mov rax, rdx
mov qword [rbp + 0x58], rax
mov rax, qword [rbp + 0x410]
mov edx, dword [rax + 0x10]
mov rax, qword [rbp + 0x468]
mov eax, dword [rax + 0x28]
mov r8d, edx
mov edx, eax
mov rcx, qword [rbp + 0x480]
call fcn.0043a8db
mov qword [rbp + 0x40], rax
mov rax, qword [rbp + 0x40]
test rax, rax
je 0x45f06e
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
cmp eax, 0xfffffff2
jne 0x45c825
mov rax, qword [rbp + 0x480]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x10000
test eax, eax
je 0x45c825
lea rdx, [0x004f6be1]
mov rcx, qword [rbp + 0x480]
call fcn.00415b32
mov qword [rbp + 0x338], rax
cmp qword [rbp + 0x338], 0
jne 0x45c815
mov dword [rbp + 0x104], 0x209001
mov eax, dword [rbp + 0x104]
mov r8d, eax
lea rdx, [0x004f6be1]
mov rcx, qword [rbp + 0x480]
call fcn.00416101
mov qword [rbp + 0x338], rax
cmp qword [rbp + 0x338], 0
je 0x45f071
mov rax, qword [rbp + 0x338]
mov qword [rbp + 0x50], rax
jmp 0x45c937
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
cmp eax, 0xfffffff2
jne 0x45c8cb
mov rax, qword [rbp + 0x410]
movzx eax, byte [rax + 0x14]
movzx eax, al
and eax, 0xf
cmp eax, 6
jne 0x45c8cb
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
je 0x45c8cb
lea rdx, str..tcommon
mov rcx, qword [rbp + 0x480]
call fcn.00415b32
mov qword [rbp + 0x330], rax
cmp qword [rbp + 0x330], 0
jne 0x45c8be
mov dword [rbp + 0x100], 0x101401
mov eax, dword [rbp + 0x100]
mov r8d, eax
lea rdx, str..tcommon
mov rcx, qword [rbp + 0x480]
call fcn.00416101
mov qword [rbp + 0x330], rax
cmp qword [rbp + 0x330], 0
je 0x45f074
mov rax, qword [rbp + 0x330]
mov qword [rbp + 0x50], rax
jmp 0x45c937
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0xc0]
test rax, rax
je 0x45c937
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0xc0]
lea r9, [rbp + 0x40]
mov r8, qword [rbp + 0x410]
mov rdx, qword [rbp + 0x488]
lea rcx, [rbp + 0x58]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x50]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0x4c]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rbp + 0x480]
call rax
test eax, eax
je 0x45f077
mov rax, qword [rbp + 0x40]
test rax, rax
je 0x45de00
mov rax, qword [rbp + 0x50]
test rax, rax
jne 0x45c94f
mov ecx, 0x11
call fcn.0040b4dd
jmp 0x45f08a
mov rax, qword [rbp + 0x410]
movzx eax, byte [rax + 0x14]
movzx eax, al
and eax, 0xf
cmp eax, 6
jne 0x45c97b
mov rax, qword [rbp + 0x50]
movzx eax, word [rax + 0x24]
and ax, 0x380
cmp ax, 0x200
je 0x45de03
mov rax, qword [rbp + 0x50]
mov rdx, qword [0x00519620]
add rdx, 0x118
cmp rax, rdx
je 0x45c9a2
mov rax, qword [rbp + 0x50]
mov eax, dword [rax + 0x20]
and eax, 0x1000
test eax, eax
je 0x45c9ae
mov dword [rbp + 0x34c], 0
jmp 0x45c9b8
mov dword [rbp + 0x34c], 1
mov dword [rbp + 0x3c], 0
mov rax, qword [rbp + 0x258]
movzx eax, byte [rax + 0x38c]
shr al, 1
and eax, 1
movzx eax, al
mov dword [rbp + 0x38], eax
mov dword [rbp + 0x34], 0
mov dword [rbp + 0x1c], 0
mov dword [rbp + 0x2c], 0
mov qword [rbp + 0x20], 0
mov rax, qword [rbp + 0x50]
mov qword [rbp + 0xf8], rax
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x40]
cmp eax, 1
jne 0x45cfac
mov dword [rbp + 0xf4], 0
cmp qword [rbp + 0x438], 0
jne 0x45ca5b
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 4]
and eax, 0xffffff80
test al, al
je 0x45ca53
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0x338]
mov word [rbp + 0x1a], ax
jmp 0x45ca78
mov word [rbp + 0x1a], 0
jmp 0x45ca78
lea rdx, [rbp + 0x1a]
mov rax, qword [rbp + 0x438]
mov r8, rdx
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0043a42f
movzx eax, word [rbp + 0x1a]
movzx eax, ax
and eax, 0x7fff
mov dword [rbp + 0xf4], eax
movzx eax, word [rbp + 0x1a]
test ax, ax
js 0x45cae2
cmp dword [rbp + 0xf4], 1
jbe 0x45cdde
mov rax, qword [rbp + 0x50]
mov rdx, qword [0x00519620]
add rdx, 0x230
cmp rax, rdx
jne 0x45cae2
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0x2c8]
mov rdx, qword [rbp + 0x410]
movzx edx, byte [rdx + 0x14]
movzx edx, dl
and edx, 0xf
mov ecx, edx
call rax
test eax, eax
je 0x45cdde
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
test eax, eax
je 0x45cbc0
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0x338]
cmp dword [rbp + 0xf4], eax
jbe 0x45cb1d
mov qword [rbp + 0x328], 0
jmp 0x45cb68
cmp dword [rbp + 0xf4], 1
jbe 0x45cb5a
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x340]
mov edx, dword [rbp + 0xf4]
sub edx, 1
mov edx, edx
shl rdx, 6
add rax, rdx
mov rax, qword [rax + 0x20]
mov qword [rbp + 0x328], rax
jmp 0x45cb68
lea rax, [0x004f6bf1]
mov qword [rbp + 0x328], rax
cmp qword [rbp + 0x328], 0
jne 0x45cca8
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0x338]
mov rdx, qword [rbp + 0x40]
mov ecx, dword [rbp + 0xf4]
mov dword [rsp + 0x20], eax
mov r9d, ecx
mov r8, rdx
mov rdx, qword [rbp + 0x480]
lea rcx, str._pB:__s:_invalid_version__u__max__d_
call fcn.0040c971
mov ecx, 0x11
call fcn.0040b4dd
jmp 0x45cfa7
mov qword [rbp + 0x328], 0
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x348]
mov qword [rbp + 0x310], rax
jmp 0x45cc5f
mov rax, qword [rbp + 0x310]
mov rax, qword [rax + 0x20]
mov qword [rbp + 0x308], rax
jmp 0x45cc39
mov rax, qword [rbp + 0x308]
movzx eax, word [rax + 6]
movzx eax, ax
cmp dword [rbp + 0xf4], eax
jne 0x45cc27
mov rax, qword [rbp + 0x308]
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x328], rax
jmp 0x45cc43
mov rax, qword [rbp + 0x308]
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x308], rax
cmp qword [rbp + 0x308], 0
jne 0x45cbfd
cmp qword [rbp + 0x308], 0
jne 0x45cc6b
mov rax, qword [rbp + 0x310]
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x310], rax
cmp qword [rbp + 0x310], 0
jne 0x45cbe9
jmp 0x45cc6c
nop
cmp qword [rbp + 0x328], 0
jne 0x45cca8
mov rax, qword [rbp + 0x40]
mov edx, dword [rbp + 0xf4]
mov r9d, edx
mov r8, rax
mov rdx, qword [rbp + 0x480]
lea rcx, str._pB:__s:_invalid_needed_version__d
call fcn.0040c971
mov ecx, 0x11
call fcn.0040b4dd
jmp 0x45cfa7
mov rax, qword [rbp + 0x40]
mov rcx, rax
call sub.msvcrt.dll_strlen
mov qword [rbp + 0xe8], rax
mov rax, qword [rbp + 0x328]
mov rcx, rax
call sub.msvcrt.dll_strlen
mov qword [rbp + 0xe0], rax
mov rdx, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xe0]
add rax, rdx
add rax, 2
mov qword [rbp + 0x320], rax
movzx eax, word [rbp + 0x1a]
test ax, ax
js 0x45cd0c
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
test eax, eax
je 0x45cd0c
add qword [rbp + 0x320], 1
mov rax, qword [rbp + 0x320]
mov edx, eax
mov rax, qword [rbp + 0x260]
mov rcx, rax
call fcn.004117f9
mov qword [rbp + 0xd8], rax
cmp qword [rbp + 0xd8], 0
je 0x45cfa0
mov rdx, qword [rbp + 0x40]
mov rcx, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xd8]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rdx, qword [rbp + 0xd8]
mov rax, qword [rbp + 0xe8]
add rax, rdx
mov qword [rbp + 0x318], rax
mov rax, qword [rbp + 0x318]
lea rdx, [rax + 1]
mov qword [rbp + 0x318], rdx
mov byte [rax], 0x40
movzx eax, word [rbp + 0x1a]
test ax, ax
js 0x45cdaf
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
test eax, eax
je 0x45cdaf
mov rax, qword [rbp + 0x318]
lea rdx, [rax + 1]
mov qword [rbp + 0x318], rdx
mov byte [rax], 0x40
mov rax, qword [rbp + 0xe0]
lea rcx, [rax + 1]
mov rdx, qword [rbp + 0x328]
mov rax, qword [rbp + 0x318]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0xd8]
mov qword [rbp + 0x40], rax
mov rax, qword [rbp + 0x50]
mov rdx, qword [0x00519620]
add rdx, 0x118
cmp rax, rdx
je 0x45ce43
cmp dword [rbp + 0x44c], 0
jne 0x45ce43
mov rax, qword [rbp + 0x480]
movzx eax, byte [rax + 0x43]
and eax, 0x20
test al, al
je 0x45ce43
mov rax, qword [rbp + 0x410]
movzx eax, byte [rax + 0x15]
movzx eax, al
and eax, 3
cmp eax, 1
je 0x45ce43
mov rax, qword [rbp + 0x410]
movzx eax, byte [rax + 0x15]
and eax, 0xfffffffc
or eax, 2
mov edx, eax
mov rax, qword [rbp + 0x410]
mov byte [rax + 0x15], dl
mov rcx, qword [rbp + 0x40]
mov r8, qword [rbp + 0x410]
mov rax, qword [rbp + 0x488]
lea rdx, [rbp + 0x1c]
mov qword [rsp + 0x70], rdx
lea rdx, [rbp + 0x3c]
mov qword [rsp + 0x68], rdx
lea rdx, [rbp + 0x38]
mov qword [rsp + 0x60], rdx
lea rdx, [rbp + 0x30]
mov qword [rsp + 0x58], rdx
lea rdx, [rbp + 0x14]
mov qword [rsp + 0x50], rdx
lea rdx, [rbp + 0x2c]
mov qword [rsp + 0x48], rdx
lea rdx, [rbp + 0x34]
mov qword [rsp + 0x40], rdx
lea rdx, [rbp + 0x20]
mov qword [rsp + 0x38], rdx
mov rdx, qword [rbp + 0x450]
mov qword [rsp + 0x30], rdx
lea rdx, [rbp + 0x58]
mov qword [rsp + 0x28], rdx
lea rdx, [rbp + 0x50]
mov qword [rsp + 0x20], rdx
mov r9, r8
mov r8, rcx
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.00455feb
test eax, eax
je 0x45cfa6
mov eax, dword [rbp + 0x14]
test eax, eax
je 0x45cee5
nop
jmp 0x45ddfd
mov eax, dword [rbp + 0x30]
test eax, eax
je 0x45cefd
mov eax, dword [rbp + 0x1c]
test eax, eax
je 0x45cefd
mov dword [rbp + 0x34c], 0
mov rax, qword [rbp + 0x450]
mov rax, qword [rax]
mov qword [rbp + 0x350], rax
jmp 0x45cf22
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 6
je 0x45cf10
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 7
je 0x45cf10
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x340]
test rax, rax
je 0x45cfac
cmp dword [rbp + 0xf4], 1
jbe 0x45cfac
cmp dword [rbp + 0x34c], 0
je 0x45cfac
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x340]
mov edx, dword [rbp + 0xf4]
sub edx, 1
mov edx, edx
shl rdx, 6
add rdx, rax
mov rax, qword [rbp + 0x350]
mov qword [rax + 0x70], rdx
jmp 0x45cfac
nop
jmp 0x45f06e
nop
jmp 0x45f06e
mov rax, qword [rbp + 0x258]
movzx eax, byte [rax + 0x38c]
and eax, 1
movzx r8d, al
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x50]
mov r11d, dword [rbp + 0x4c]
mov r10, qword [rbp + 0x40]
mov rax, qword [rbp + 0x488]
mov r9, qword [rbp + 0x450]
mov qword [rsp + 0x48], r9
mov dword [rsp + 0x40], r8d
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdx
mov r9d, r11d
mov r8, r10
mov rdx, qword [rbp + 0x480]
mov rcx, rax
call fcn.0048b709
test eax, eax
je 0x45f07a
mov rax, qword [rbp + 0x480]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x40
test eax, eax
jne 0x45d11b
mov rax, qword [rbp + 0x488]
mov rax, qword [rax + 0x50]
mov rax, qword [rax + 8]
mov eax, dword [rax + 8]
cmp eax, 5
jne 0x45d11b
mov rax, qword [rbp + 0x410]
movzx eax, byte [rax + 0x14]
movzx eax, al
and eax, 0xf
cmp eax, 0xa
jne 0x45d0bf
mov rax, qword [rbp + 0x488]
mov rax, qword [rax + 0x50]
mov rax, qword [rax + 0xf0]
movzx eax, byte [rax + 0xc85]
shr al, 2
and eax, 7
mov rdx, qword [rbp + 0x488]
mov rdx, qword [rdx + 0x50]
mov rdx, qword [rdx + 0xf0]
or eax, 3
and eax, 7
lea ecx, [rax*4]
movzx eax, byte [rdx + 0xc85]
and eax, 0xffffffe3
or eax, ecx
mov byte [rdx + 0xc85], al
mov eax, dword [rbp + 0x4c]
and eax, 0x800000
test eax, eax
je 0x45d11b
mov rax, qword [rbp + 0x488]
mov rax, qword [rax + 0x50]
mov rax, qword [rax + 0xf0]
movzx eax, byte [rax + 0xc85]
shr al, 2
and eax, 7
mov rdx, qword [rbp + 0x488]
mov rdx, qword [rdx + 0x50]
mov rdx, qword [rdx + 0xf0]
or eax, 5
and eax, 7
lea ecx, [rax*4]
movzx eax, byte [rdx + 0xc85]
and eax, 0xffffffe3
or eax, ecx
mov byte [rdx + 0xc85], al
mov rax, qword [rbp + 0x450]
mov rax, qword [rax]
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0x350]
mov qword [rbp + 0xd0], rax
jmp 0x45d14e
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 6
je 0x45d13c
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 7
je 0x45d13c
cmp dword [rbp + 0x344], 0
je 0x45d183
mov rax, qword [rbp + 0x350]
mov dword [rax + 0x38], 0xfffffffd
mov rax, qword [rbp + 0x450]
mov rdx, qword [rbp + 0x350]
mov qword [rax], rdx
mov eax, dword [rbp + 0x4c]
and eax, 0x80
test eax, eax
setne al
movzx eax, al
mov dword [rbp + 0xcc], eax
cmp dword [rbp + 0x44c], 0
je 0x45d22b
cmp dword [rbp + 0x34c], 0
je 0x45d22b
cmp dword [rbp + 0xcc], 0
je 0x45d22b
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0x2c8]
mov rdx, qword [rbp + 0x410]
movzx edx, byte [rdx + 0x14]
movzx edx, dl
and edx, 0xf
mov ecx, edx
call rax
test eax, eax
jne 0x45d22b
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x40]
cmp eax, 1
jne 0x45d22b
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x68]
test rax, rax
jne 0x45d22b
mov rax, qword [rbp + 0x350]
mov rdx, qword [rbp + 0x430]
mov qword [rax + 0x68], rdx
mov rax, qword [rbp + 0x350]
mov qword [rbp + 0x430], rax
cmp dword [rbp + 0x348], 0
jne 0x45d244
mov rax, qword [rbp + 0x50]
mov eax, dword [rax + 0x20]
and eax, 0x1000
test eax, eax
je 0x45d2b6
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 5
jne 0x45d2b6
cmp dword [rbp + 0x348], 0
je 0x45d276
mov rax, qword [rbp + 0x410]
mov rax, qword [rax]
mov rcx, rax
call fcn.00413135
mov dword [rbp + 0x304], eax
jmp 0x45d286
mov rax, qword [rbp + 0xf8]
mov eax, dword [rax + 0x70]
mov dword [rbp + 0x304], eax
mov eax, dword [rbp + 0x2c]
cmp dword [rbp + 0x304], eax
jbe 0x45d2a6
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x28]
mov edx, dword [rbp + 0x304]
mov dword [rax], edx
jmp 0x45d2b6
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x28]
mov edx, dword [rbp + 0x2c]
mov dword [rax], edx
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x40]
cmp eax, 1
jne 0x45de04
mov dword [rbp + 0x10], 0
mov rax, qword [rbp + 0x480]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x10000
test eax, eax
jne 0x45d4a7
cmp dword [rbp + 0x44c], 0
jne 0x45d3e2
cmp dword [rbp + 0x34c], 0
jne 0x45d332
mov rax, qword [rbp + 0x350]
movzx edx, byte [rax + 0x5b]
or edx, 1
mov byte [rax + 0x5b], dl
cmp dword [rbp + 0x108], 2
je 0x45d377
mov rax, qword [rbp + 0x350]
movzx edx, byte [rax + 0x5b]
or edx, 0x10
mov byte [rax + 0x5b], dl
jmp 0x45d377
mov rax, qword [rbp + 0x350]
movzx edx, byte [rax + 0x5b]
or edx, 2
mov byte [rax + 0x5b], dl
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5b]
and eax, 8
test al, al
je 0x45d377
mov rax, qword [rbp + 0x350]
movzx edx, byte [rax + 0x5b]
and edx, 0xfffffff7
mov byte [rax + 0x5b], dl
mov rax, qword [rbp + 0x350]
movzx edx, byte [rax + 0x5b]
or edx, 4
mov byte [rax + 0x5b], dl
mov rax, qword [rbp + 0x350]
cmp rax, qword [rbp + 0xd0]
je 0x45d39d
mov rax, qword [rbp + 0xd0]
movzx eax, byte [rax + 0x5c]
and eax, 8
test al, al
jne 0x45d4a7
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 3
je 0x45d3d6
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5b]
and eax, 8
test al, al
jne 0x45d3d6
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5b]
and eax, 4
test al, al
je 0x45d4a7
mov dword [rbp + 0x10], 1
jmp 0x45d4a7
cmp dword [rbp + 0x34c], 0
jne 0x45d40f
mov rax, qword [rbp + 0x350]
movzx edx, byte [rax + 0x5b]
or edx, 4
mov byte [rax + 0x5b], dl
mov rax, qword [rbp + 0xd0]
movzx edx, byte [rax + 0x5b]
or edx, 4
mov byte [rax + 0x5b], dl
jmp 0x45d431
mov rax, qword [rbp + 0x350]
movzx edx, byte [rax + 0x5b]
or edx, 8
mov byte [rax + 0x5b], dl
mov rax, qword [rbp + 0xd0]
movzx edx, byte [rax + 0x5b]
or edx, 8
mov byte [rax + 0x5b], dl
mov rax, qword [rbp + 0x350]
cmp rax, qword [rbp + 0xd0]
je 0x45d453
mov rax, qword [rbp + 0xd0]
movzx eax, byte [rax + 0x5c]
and eax, 8
test al, al
jne 0x45d4a7
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5b]
and eax, 2
test al, al
jne 0x45d4a0
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5b]
and eax, 1
test al, al
jne 0x45d4a0
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5d]
and eax, 0x20
test al, al
je 0x45d4a7
mov rax, qword [rbp + 0x350]
mov rcx, rax
call fcn.00454281
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
je 0x45d4a7
mov dword [rbp + 0x10], 1
cmp dword [rbp + 0x34c], 0
jne 0x45d4c6
mov eax, dword [rbp + 0x30]
test eax, eax
jne 0x45d522
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 5
jne 0x45d522
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x50]
mov r9, qword [rbp + 0x40]
mov r10, qword [rbp + 0x350]
mov rax, qword [rbp + 0x488]
lea r8, [rbp + 0x10]
mov qword [rsp + 0x40], r8
lea r8, [rbp + 0x20]
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rdx
mov rdx, qword [rbp + 0x410]
mov qword [rsp + 0x20], rdx
mov r8, r10
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.00457450
test eax, eax
je 0x45f07d
mov eax, dword [rbp + 0x2c]
test eax, eax
jne 0x45d536
cmp dword [rbp + 0x348], 0
je 0x45d729
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 5
je 0x45d729
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 3
je 0x45d578
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 4
je 0x45d578
mov edx, 0x12fd
lea rcx, str._workdir_repo_binutils_gdb_gnu_bfd_elflink.c
call fcn.0040cbbb
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x30]
mov ecx, eax
call fcn.004cb360
sub eax, 1
mov dword [rbp + 0xc8], eax
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x28]
mov rax, qword [rax + 0xf0]
test rax, rax
je 0x45d600
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x28]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x10040
test eax, eax
jne 0x45d600
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x28]
mov eax, dword [rax + 0x70]
mov dword [rbp + 0x2fc], eax
mov eax, dword [rbp + 0x2fc]
cmp eax, dword [rbp + 0xc8]
jbe 0x45d60c
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0x2fc], eax
jmp 0x45d60c
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0x2fc], eax
mov eax, dword [rbp + 0x2c]
test eax, eax
je 0x45d637
mov eax, dword [rbp + 0x2c]
mov dword [rbp + 0x300], eax
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x2e8], rax
mov rax, qword [rbp + 0x480]
mov qword [rbp + 0x2f0], rax
jmp 0x45d668
mov rax, qword [rbp + 0x410]
mov rax, qword [rax]
mov rcx, rax
call fcn.00413135
mov dword [rbp + 0x300], eax
mov rax, qword [rbp + 0x480]
mov qword [rbp + 0x2e8], rax
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x2f0], rax
mov eax, dword [rbp + 0x2fc]
cmp eax, dword [rbp + 0x300]
jae 0x45d729
cmp qword [rbp + 0x2f0], 0
jne 0x45d6dd
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x28]
mov edx, dword [rbp + 0x2fc]
mov r8d, 1
mov r9d, r8d
mov ecx, edx
shl r9d, cl
mov r8, qword [rbp + 0x40]
mov edx, dword [rbp + 0x300]
mov r10d, 1
mov ecx, edx
shl r10d, cl
mov edx, r10d
mov rcx, qword [rbp + 0x2e8]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r9d
mov r9, rcx
lea rcx, str.warning:_alignment__u_of_common_symbol___s_in__pB_is_greater_than_the_alignment___u__of_its_section__pA
call fcn.0040c971
jmp 0x45d729
mov eax, dword [rbp + 0x300]
mov edx, 1
mov ecx, eax
shl edx, cl
mov r9d, edx
mov r8, qword [rbp + 0x40]
mov eax, dword [rbp + 0x2fc]
mov edx, 1
mov ecx, eax
shl edx, cl
mov rcx, qword [rbp + 0x2f0]
mov rax, qword [rbp + 0x2e8]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r9d
mov r9, rcx
lea rcx, str.warning:_alignment__u_of_symbol___s_in__pB_is_smaller_than__u_in__pB
call fcn.0040c971
mov rax, qword [rbp + 0x410]
mov rax, qword [rax + 8]
test rax, rax
je 0x45d7f2
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
test eax, eax
je 0x45d7f2
cmp dword [rbp + 0x34c], 0
jne 0x45d76c
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x50]
test rax, rax
jne 0x45d7f2
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x50]
test rax, rax
je 0x45d7dc
mov rax, qword [rbp + 0x350]
mov rdx, qword [rax + 0x50]
mov rax, qword [rbp + 0x410]
mov rax, qword [rax + 8]
cmp rdx, rax
je 0x45d7dc
mov eax, dword [rbp + 0x3c]
test eax, eax
jne 0x45d7dc
mov rax, qword [rbp + 0x410]
mov rdx, qword [rax + 8]
mov r9, qword [rbp + 0x20]
mov rax, qword [rbp + 0x350]
mov r8, qword [rax + 0x50]
mov rax, qword [rbp + 0x40]
mov rcx, qword [rbp + 0x480]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdx
mov rdx, rax
lea rcx, str.warning:_size_of_symbol___s_changed_from__I64u_in__pB_to__I64u_in__pB
call fcn.0040c971
mov rax, qword [rbp + 0x410]
mov rdx, qword [rax + 8]
mov rax, qword [rbp + 0x350]
mov qword [rax + 0x50], rdx
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 5
jne 0x45d817
mov rax, qword [rbp + 0x350]
mov rdx, qword [rax + 0x30]
mov rax, qword [rbp + 0x350]
mov qword [rax + 0x50], rdx
mov rax, qword [rbp + 0x410]
movzx eax, byte [rax + 0x14]
movzx eax, al
and eax, 0xf
test eax, eax
je 0x45d926
cmp dword [rbp + 0x34c], 0
je 0x45d842
cmp dword [rbp + 0xcc], 0
je 0x45d86b
mov eax, dword [rbp + 0x34]
test eax, eax
je 0x45d858
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 5
je 0x45d86b
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x58]
test al, al
jne 0x45d926
mov rax, qword [rbp + 0x410]
movzx eax, byte [rax + 0x14]
movzx eax, al
and eax, 0xf
mov dword [rbp + 0x2e4], eax
cmp dword [rbp + 0x2e4], 0xa
jne 0x45d8ae
mov rax, qword [rbp + 0x480]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x40
test eax, eax
je 0x45d8ae
mov dword [rbp + 0x2e4], 2
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x58]
movzx eax, al
cmp dword [rbp + 0x2e4], eax
je 0x45d926
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x58]
test al, al
je 0x45d914
mov eax, dword [rbp + 0x38]
test eax, eax
jne 0x45d914
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x58]
movzx ecx, al
mov rax, qword [rbp + 0x40]
mov r8d, dword [rbp + 0x2e4]
mov rdx, qword [rbp + 0x480]
mov qword [rsp + 0x20], rdx
mov r9d, r8d
mov r8d, ecx
mov rdx, rax
lea rcx, str.warning:_type_of_symbol___s_changed_from__d_to__d_in__pB
call fcn.0040c971
mov eax, dword [rbp + 0x2e4]
mov edx, eax
mov rax, qword [rbp + 0x350]
mov byte [rax + 0x58], dl
mov r8, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x410]
mov rax, qword [rbp + 0x350]
mov edx, dword [rbp + 0x44c]
mov dword [rsp + 0x28], edx
mov edx, dword [rbp + 0x34c]
mov dword [rsp + 0x20], edx
mov r9, r8
mov r8, rcx
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.00455f05
cmp dword [rbp + 0x34c], 0
je 0x45d992
mov rax, qword [rbp + 0x50]
mov eax, dword [rax + 0x20]
and eax, 0x2000
test eax, eax
je 0x45d992
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
je 0x45d992
mov dword [rbp + 0x10], 0
mov rax, qword [rbp + 0x480]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x10000
test eax, eax
je 0x45d9b4
mov dword [rbp + 0x10], 0
cmp dword [rbp + 0x34c], 0
je 0x45d9fc
mov rax, qword [rbp + 0x410]
movzx edx, byte [rax + 0x16]
mov rax, qword [rbp + 0x350]
mov byte [rax + 0x5a], dl
mov eax, dword [rbp + 0x4c]
and eax, 0x800000
test eax, eax
setne dl
mov rax, qword [rbp + 0x350]
and edx, 1
lea ecx, [rdx*4]
movzx edx, byte [rax + 0x5d]
and edx, 0xfffffffb
or edx, ecx
mov byte [rax + 0x5d], dl
cmp dword [rbp + 0x34c], 0
je 0x45dad5
cmp dword [rbp + 0x44c], 0
jne 0x45dad5
mov rax, qword [rbp + 0x40]
mov edx, 0x40
mov rcx, rax
call sub.msvcrt.dll_strchr
mov qword [rbp + 0xc0], rax
cmp qword [rbp + 0xc0], 0
je 0x45dad5
mov rax, qword [rbp + 0xc0]
add rax, 1
movzx eax, byte [rax]
cmp al, 0x40
je 0x45dad5
cmp qword [rbp + 0x428], 0
jne 0x45daa7
mov rdx, qword [rbp + 0x1a8]
mov rax, qword [rbp + 0x410]
sub rdx, rax
mov rax, rdx
sar rax, 5
add rax, 1
shl rax, 3
mov qword [rbp + 0x230], rax
mov rax, qword [rbp + 0x230]
mov rcx, rax
call fcn.00412093
mov qword [rbp + 0x428], rax
cmp qword [rbp + 0x428], 0
je 0x45ddeb
mov rax, qword [rbp + 0x420]
lea rdx, [rax + 1]
mov qword [rbp + 0x420], rdx
lea rdx, [rax*8]
mov rax, qword [rbp + 0x428]
add rdx, rax
mov rax, qword [rbp + 0x350]
mov qword [rdx], rax
mov eax, dword [rbp + 0x10]
test eax, eax
je 0x45db64
mov rax, qword [rbp + 0x350]
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
jne 0x45db64
mov rdx, qword [rbp + 0x350]
mov rax, qword [rbp + 0x488]
mov rcx, rax
call fcn.004551a9
test eax, eax
je 0x45ddf1
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5d]
and eax, 0x20
test al, al
je 0x45dbb9
mov rax, qword [rbp + 0x350]
mov rcx, rax
call fcn.00454281
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
jne 0x45dbb9
mov rax, qword [rbp + 0x350]
mov rcx, rax
call fcn.00454281
mov rdx, rax
mov rax, qword [rbp + 0x488]
mov rcx, rax
call fcn.004551a9
test eax, eax
jne 0x45dbb9
jmp 0x45ddf8
mov rax, qword [rbp + 0x350]
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
je 0x45dbba
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x59]
movzx eax, al
and eax, 3
sub eax, 1
cmp eax, 1
ja 0x45dbba
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0x1b8]
mov rdx, qword [rbp + 0x350]
mov rcx, qword [rbp + 0x488]
mov r8d, 1
call rax
mov dword [rbp + 0x10], 0
jmp 0x45dbba
nop
cmp dword [rbp + 0x40c], 0
jne 0x45de04
mov eax, dword [rbp + 0x1c]
test eax, eax
je 0x45de04
cmp dword [rbp + 0x34c], 0
je 0x45de04
mov eax, dword [rbp + 0x10]
test eax, eax
je 0x45dc1d
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5b]
and eax, 0x10
test al, al
je 0x45dc1d
mov rax, qword [rbp + 0x20]
test rax, rax
je 0x45dc96
mov rax, qword [rbp + 0x20]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x10000
test eax, eax
je 0x45dc96
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5d]
and eax, 1
test al, al
je 0x45de04
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
movzx eax, word [rax + 0xc84]
shr ax, 6
and eax, 0xf
movzx eax, al
and eax, 1
test eax, eax
je 0x45de04
mov rax, qword [rbp + 0x260]
mov rdx, qword [rax + 0xb8]
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x308]
mov r8d, 0
mov rcx, rax
call fcn.0045a6b6
test eax, eax
jne 0x45de04
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x308]
mov qword [rbp + 0xb8], rax
mov rax, qword [rbp + 0x488]
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 0x68]
mov rdx, qword [rbp + 0x350]
mov r8, qword [rdx + 8]
mov rcx, qword [rbp + 0x20]
mov rdx, qword [rbp + 0xb8]
mov r9, r8
mov r8, rcx
lea rcx, [0x004f6d82]
call rax
mov rax, qword [rbp + 0x20]
test rax, rax
je 0x45dd3e
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
movzx eax, word [rax + 0xc84]
shr ax, 6
and eax, 0xf
movzx eax, al
and eax, 8
test eax, eax
je 0x45dd3e
mov rdx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x20]
mov r8, rdx
mov rdx, rax
lea rcx, str._pB:_undefined_reference_to_symbol__s
call fcn.0040c971
mov ecx, 0xb
call fcn.0040b4dd
jmp 0x45ddf8
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
movzx eax, word [rax + 0xc84]
shr ax, 6
mov edx, eax
and edx, 0xf
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
and edx, 0xe
movzx edx, dl
and edx, 0xf
mov ecx, edx
shl ecx, 6
movzx edx, word [rax + 0xc84]
and dx, 0xfc3f
or edx, ecx
mov word [rax + 0xc84], dx
mov dword [rbp + 0x40c], 1
mov ecx, dword [rbp + 0x40c]
mov rdx, qword [rbp + 0xb8]
mov rax, qword [rbp + 0x488]
mov r9d, ecx
mov r8, rdx
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0045a4de
mov dword [rbp + 0xb4], eax
cmp dword [rbp + 0xb4], 0
js 0x45ddf7
cmp dword [rbp + 0xb4], 0
je 0x45de04
mov edx, 0x13cc
lea rcx, str._workdir_repo_binutils_gdb_gnu_bfd_elflink.c
call fcn.0040cbbb
jmp 0x45de04
nop
jmp 0x45f06e
nop
jmp 0x45f06e
nop
jmp 0x45f06e
nop
jmp 0x45de04
nop
jmp 0x45de04
nop
add qword [rbp + 0x410], 0x20
add qword [rbp + 0x450], 8
cmp qword [rbp + 0x438], 0
je 0x45de2b
mov rax, qword [rbp + 0x438]
add rax, 2
jmp 0x45de30
mov eax, 0
mov qword [rbp + 0x438], rax
mov rax, qword [rbp + 0x410]
cmp rax, qword [rbp + 0x1a8]
jb 0x45c4ff
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 1]
and eax, 2
test al, al
je 0x45e0fe
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
je 0x45e0fe
mov rax, qword [rbp + 0x480]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x10000
test eax, eax
jne 0x45e0fe
cmp dword [rbp + 0x24c], 0
jne 0x45e0fe
cmp qword [rbp + 0x460], 0
je 0x45e0fe
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0x300]
movzx eax, byte [rax + 0xa]
cmp al, 0x20
jne 0x45ded2
mov dword [rbp + 0x2e0], 8
jmp 0x45dedc
mov dword [rbp + 0x2e0], 0x20
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x2f8]
mov qword [rbp + 0x450], rax
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0x88]
mov qword [rbp + 0x3b8], rax
jmp 0x45e0f0
mov rax, qword [rbp + 0x3b8]
mov eax, dword [rax + 0x20]
and eax, 4
test eax, eax
je 0x45e0dd
mov rax, qword [rbp + 0x3b8]
mov eax, dword [rax + 0x88]
test eax, eax
je 0x45e0dd
mov rax, qword [rbp + 0x3b8]
mov eax, dword [rax + 0x20]
and eax, 0x8000
test eax, eax
jne 0x45e0dd
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 1]
and eax, 0x60
cmp al, 0x60
je 0x45df77
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 1]
and eax, 0x60
cmp al, 0x20
jne 0x45df8e
mov rax, qword [rbp + 0x3b8]
mov eax, dword [rax + 0x20]
and eax, 0x2000
test eax, eax
jne 0x45e0dd
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 3]
shr al, 2
and eax, 1
movzx edx, al
mov rax, qword [rbp + 0x3b8]
mov dword [rsp + 0x20], edx
mov r9d, 0
mov r8d, 0
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.00458aff
mov qword [rbp + 0x1a0], rax
cmp qword [rbp + 0x1a0], 0
je 0x45f080
mov rax, qword [rbp + 0x1a0]
mov qword [rbp + 0x2d8], rax
mov rax, qword [rbp + 0x3b8]
mov eax, dword [rax + 0x88]
mov edx, eax
mov rax, rdx
add rax, rax
add rax, rdx
shl rax, 3
mov rdx, rax
mov rax, qword [rbp + 0x2d8]
add rax, rdx
mov qword [rbp + 0x198], rax
jmp 0x45e09a
mov rax, qword [rbp + 0x2d8]
mov rdx, qword [rax + 8]
mov eax, dword [rbp + 0x2e0]
mov ecx, eax
shr rdx, cl
mov rax, rdx
mov dword [rbp + 0x194], eax
mov eax, dword [rbp + 0x194]
cmp qword [rbp + 0x458], rax
ja 0x45e091
mov eax, dword [rbp + 0x194]
sub rax, qword [rbp + 0x458]
lea rdx, [rax*8]
mov rax, qword [rbp + 0x450]
add rax, rdx
mov rax, qword [rax]
mov qword [rbp + 0x188], rax
cmp qword [rbp + 0x188], 0
je 0x45e092
mov rax, qword [rbp + 0x188]
movzx edx, byte [rax + 0x19]
or edx, 1
mov byte [rax + 0x19], dl
jmp 0x45e092
nop
add qword [rbp + 0x2d8], 0x18
mov rax, qword [rbp + 0x2d8]
cmp rax, qword [rbp + 0x198]
jb 0x45e01d
mov rax, qword [rbp + 0x3b8]
mov rax, qword [rax + 0xe0]
mov rax, qword [rax + 0x98]
cmp qword [rbp + 0x1a0], rax
je 0x45e0de
mov rax, qword [rbp + 0x1a0]
mov rcx, rax
call sub.msvcrt.dll_free
jmp 0x45e0de
nop
mov rax, qword [rbp + 0x3b8]
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x3b8], rax
cmp qword [rbp + 0x3b8], 0
jne 0x45df12
cmp qword [rbp + 0x440], 0
je 0x45e122
mov rax, qword [rbp + 0x440]
mov rcx, rax
call sub.msvcrt.dll_free
mov qword [rbp + 0x440], 0
cmp qword [rbp + 0x418], 0
je 0x45e146
mov rax, qword [rbp + 0x418]
mov rcx, rax
call sub.msvcrt.dll_free
mov qword [rbp + 0x418], 0
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
movzx eax, word [rax + 0xc84]
shr ax, 6
and eax, 0xf
movzx eax, al
and eax, 1
test eax, eax
je 0x45e509
mov rdx, qword [rbp + 0x3e8]
mov rax, qword [rbp + 0x3c0]
add rax, rdx
mov qword [rbp + 0x3e0], rax
mov rax, qword [rbp + 0x460]
lea rdx, [rax*8]
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x2f8]
mov r8, rdx
mov edx, 0
mov rcx, rax
call sub.msvcrt.dll_memset
mov rax, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x3f8]
mov qword [rax], rdx
mov rax, qword [rbp + 0x260]
mov edx, dword [rbp + 0x3f4]
mov dword [rax + 0x18], edx
mov rax, qword [rbp + 0x260]
mov edx, dword [rbp + 0x3f0]
mov dword [rax + 0x1c], edx
mov rax, qword [rbp + 0x260]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x3c0]
mov rdx, qword [rbp + 0x3e8]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x3d8]
mov qword [rax + 0x28], rdx
mov rax, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x3d0]
mov qword [rax + 0x30], rdx
mov rax, qword [rbp + 0x260]
mov rax, qword [rax + 0x90]
mov rdx, qword [rbp + 0x3c8]
mov rcx, rax
call fcn.004771a0
mov rax, qword [rbp + 0x3c8]
mov rcx, rax
call sub.msvcrt.dll_free
mov qword [rbp + 0x3c8], 0
mov dword [rbp + 0x2d4], 0
jmp 0x45e47b
mov rax, qword [rbp + 0x260]
mov rax, qword [rax]
mov edx, dword [rbp + 0x2d4]
shl rdx, 3
add rax, rdx
mov rax, qword [rax]
mov qword [rbp + 0x2c8], rax
jmp 0x45e466
mov rax, qword [rbp + 0x2c8]
mov qword [rbp + 0x2c0], rax
mov rax, qword [rbp + 0x2c0]
movzx eax, byte [rax + 0x18]
cmp al, 7
jne 0x45e2cf
mov rax, qword [rbp + 0x2c0]
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x2c0], rax
mov rax, qword [rbp + 0x2c0]
movzx eax, byte [rax + 0x18]
cmp al, 5
jne 0x45e305
mov rax, qword [rbp + 0x2c0]
mov rax, qword [rax + 0x30]
mov qword [rbp + 0x2b8], rax
mov rax, qword [rbp + 0x2c0]
mov rax, qword [rax + 0x28]
mov eax, dword [rax]
mov dword [rbp + 0x2b4], eax
jmp 0x45e31a
mov qword [rbp + 0x2b8], 0
mov dword [rbp + 0x2b4], 0
mov rax, qword [rbp + 0x2c0]
movzx eax, byte [rax + 0x19]
shr al, 1
and eax, 1
movzx eax, al
mov dword [rbp + 0x10c], eax
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x20]
mov ecx, eax
mov rdx, qword [rbp + 0x3e0]
mov rax, qword [rbp + 0x2c8]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x20]
mov eax, eax
add qword [rbp + 0x3e0], rax
mov rax, qword [rbp + 0x2c8]
mov qword [rbp + 0x2c0], rax
mov rax, qword [rbp + 0x2c0]
movzx eax, byte [rax + 0x18]
cmp al, 7
jne 0x45e3d6
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x20]
mov ecx, eax
mov rax, qword [rbp + 0x2c0]
mov rax, qword [rax + 0x28]
mov rdx, qword [rbp + 0x3e0]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x20]
mov eax, eax
add qword [rbp + 0x3e0], rax
mov rax, qword [rbp + 0x2c0]
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x2c0], rax
mov rax, qword [rbp + 0x2c0]
movzx eax, byte [rax + 0x18]
cmp al, 5
jne 0x45e433
mov rax, qword [rbp + 0x2c0]
mov rax, qword [rax + 0x30]
cmp qword [rbp + 0x2b8], rax
jbe 0x45e40b
mov rax, qword [rbp + 0x2c0]
mov rdx, qword [rbp + 0x2b8]
mov qword [rax + 0x30], rdx
mov rax, qword [rbp + 0x2c0]
mov rax, qword [rax + 0x28]
mov eax, dword [rax]
cmp dword [rbp + 0x2b4], eax
jbe 0x45e433
mov rax, qword [rbp + 0x2c0]
mov rax, qword [rax + 0x28]
mov edx, dword [rbp + 0x2b4]
mov dword [rax], edx
mov eax, dword [rbp + 0x10c]
and eax, 1
mov rdx, qword [rbp + 0x2c0]
and eax, 1
lea ecx, [rax + rax]
movzx eax, byte [rdx + 0x19]
and eax, 0xfffffffd
or eax, ecx
mov byte [rdx + 0x19], al
mov rax, qword [rbp + 0x2c8]
mov rax, qword [rax]
mov qword [rbp + 0x2c8], rax
cmp qword [rbp + 0x2c8], 0
jne 0x45e2a0
add dword [rbp + 0x2d4], 1
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x18]
cmp dword [rbp + 0x2d4], eax
jb 0x45e27a
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0xf8]
mov rdx, qword [rbp + 0x488]
mov r8d, 1
mov rcx, qword [rbp + 0x480]
call rax
test eax, eax
je 0x45f083
mov rax, qword [rbp + 0x3e8]
mov rcx, rax
call sub.msvcrt.dll_free
mov rax, qword [rbp + 0x260]
mov rax, qword [rax + 0x10]
mov rdx, qword [rbp + 0x400]
mov rcx, rax
call fcn.004c9893
cmp qword [rbp + 0x428], 0
je 0x45e4ff
mov rax, qword [rbp + 0x428]
mov rcx, rax
call sub.msvcrt.dll_free
mov eax, 1
jmp 0x45f136
cmp qword [rbp + 0x3e8], 0
je 0x45e559
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0xf8]
mov rdx, qword [rbp + 0x488]
mov r8d, 2
mov rcx, qword [rbp + 0x480]
call rax
test eax, eax
je 0x45f086
mov rax, qword [rbp + 0x3e8]
mov rcx, rax
call sub.msvcrt.dll_free
mov qword [rbp + 0x3e8], 0
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
je 0x45e85b
cmp qword [rbp + 0x428], 0
je 0x45e85b
mov qword [rbp + 0x2a8], 0
jmp 0x45e82d
mov rax, qword [rbp + 0x2a8]
lea rdx, [rax*8]
mov rax, qword [rbp + 0x428]
add rax, rdx
mov rax, qword [rax]
mov qword [rbp + 0x180], rax
mov rax, qword [rbp + 0x180]
mov rax, qword [rax + 8]
mov edx, 0x40
mov rcx, rax
call sub.msvcrt.dll_strchr
mov qword [rbp + 0x178], rax
cmp qword [rbp + 0x178], 0
je 0x45e824
mov rax, qword [rbp + 0x180]
movzx eax, byte [rax + 0x18]
cmp al, 3
je 0x45e5fe
mov rax, qword [rbp + 0x180]
movzx eax, byte [rax + 0x18]
cmp al, 4
jne 0x45e824
mov rdx, qword [rbp + 0x178]
mov rax, qword [rbp + 0x180]
mov rax, qword [rax + 8]
sub rdx, rax
mov rax, rdx
mov qword [rbp + 0x230], rax
mov rax, qword [rbp + 0x230]
add rax, 1
mov rcx, rax
call fcn.00412093
mov qword [rbp + 0x170], rax
cmp qword [rbp + 0x170], 0
je 0x45f089
mov rax, qword [rbp + 0x180]
mov rdx, qword [rax + 8]
mov rcx, qword [rbp + 0x230]
mov rax, qword [rbp + 0x170]
mov r8, rcx
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rdx, qword [rbp + 0x170]
mov rax, qword [rbp + 0x230]
add rax, rdx
mov byte [rax], 0
mov rax, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x170]
mov dword [rsp + 0x20], 0
mov r9d, 0
mov r8d, 0
mov rcx, rax
call fcn.0048a3ab
mov qword [rbp + 0x168], rax
cmp qword [rbp + 0x168], 0
je 0x45e813
mov rax, qword [rbp + 0x168]
movzx edx, byte [rax + 0x18]
mov rax, qword [rbp + 0x180]
movzx eax, byte [rax + 0x18]
cmp dl, al
jne 0x45e813
mov rax, qword [rbp + 0x168]
mov rdx, qword [rax + 0x30]
mov rax, qword [rbp + 0x180]
mov rax, qword [rax + 0x30]
cmp rdx, rax
jne 0x45e813
mov rax, qword [rbp + 0x168]
mov rdx, qword [rax + 0x28]
mov rax, qword [rbp + 0x180]
mov rax, qword [rax + 0x28]
cmp rdx, rax
jne 0x45e813
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0x1b8]
mov rdx, qword [rbp + 0x168]
mov rcx, qword [rbp + 0x488]
mov r8d, 1
call rax
mov rax, qword [rbp + 0x168]
mov byte [rax + 0x18], 6
mov rax, qword [rbp + 0x168]
mov rdx, qword [rbp + 0x180]
mov qword [rax + 0x28], rdx
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0x1b0]
mov r8, qword [rbp + 0x168]
mov rdx, qword [rbp + 0x180]
mov rcx, qword [rbp + 0x488]
call rax
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x2f8]
mov qword [rbp + 0x450], rax
cmp qword [rbp + 0x450], 0
je 0x45e813
mov qword [rbp + 0x2a0], 0
jmp 0x45e803
mov rax, qword [rbp + 0x2a0]
lea rdx, [rax*8]
mov rax, qword [rbp + 0x450]
add rax, rdx
mov rax, qword [rax]
cmp qword [rbp + 0x168], rax
jne 0x45e7fb
mov rax, qword [rbp + 0x2a0]
lea rdx, [rax*8]
mov rax, qword [rbp + 0x450]
add rdx, rax
mov rax, qword [rbp + 0x180]
mov qword [rdx], rax
jmp 0x45e813
add qword [rbp + 0x2a0], 1
mov rax, qword [rbp + 0x2a0]
cmp rax, qword [rbp + 0x460]
jb 0x45e7b1
mov rax, qword [rbp + 0x170]
mov rcx, rax
call sub.msvcrt.dll_free
jmp 0x45e825
nop
add qword [rbp + 0x2a8], 1
mov rax, qword [rbp + 0x2a8]
cmp rax, qword [rbp + 0x420]
jb 0x45e58c
mov rax, qword [rbp + 0x428]
mov rcx, rax
call sub.msvcrt.dll_free
mov qword [rbp + 0x428], 0
cmp qword [rbp + 0x430], 0
je 0x45ed7b
mov rax, qword [rbp + 0x460]
mov qword [rbp + 0x230], rax
shl qword [rbp + 0x230], 3
mov rax, qword [rbp + 0x230]
mov rcx, rax
call fcn.00412093
mov qword [rbp + 0x160], rax
cmp qword [rbp + 0x160], 0
je 0x45f127
mov rax, qword [rbp + 0x160]
mov qword [rbp + 0x450], rax
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x2f8]
mov qword [rbp + 0x298], rax
mov rax, qword [rbp + 0x460]
lea rdx, [rax*8]
mov rax, qword [rbp + 0x298]
add rax, rdx
mov qword [rbp + 0x158], rax
mov qword [rbp + 0x290], 0
jmp 0x45e971
mov rax, qword [rbp + 0x298]
mov rax, qword [rax]
mov qword [rbp + 0x138], rax
cmp qword [rbp + 0x138], 0
je 0x45e969
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax + 0x18]
cmp al, 3
jne 0x45e969
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0x2c8]
mov rdx, qword [rbp + 0x138]
movzx edx, byte [rdx + 0x58]
movzx edx, dl
mov ecx, edx
call rax
test eax, eax
jne 0x45e969
mov rax, qword [rbp + 0x450]
mov rdx, qword [rbp + 0x138]
mov qword [rax], rdx
add qword [rbp + 0x450], 8
add qword [rbp + 0x290], 1
add qword [rbp + 0x298], 8
mov rax, qword [rbp + 0x298]
cmp rax, qword [rbp + 0x158]
jb 0x45e8fa
mov rdx, qword [rbp + 0x290]
mov rax, qword [rbp + 0x160]
lea r9, [0x0045a76b]
mov r8d, 8
mov rcx, rax
call sub.msvcrt.dll_qsort
jmp 0x45ed5e
mov qword [rbp + 0x278], 0
mov rax, qword [rbp + 0x430]
mov qword [rbp + 0x150], rax
mov rax, qword [rbp + 0x150]
mov rax, qword [rax + 0x68]
mov qword [rbp + 0x430], rax
mov rax, qword [rbp + 0x150]
mov qword [rax + 0x68], 0
mov rax, qword [rbp + 0x150]
movzx eax, byte [rax + 0x18]
cmp al, 3
je 0x45ea0a
mov rax, qword [rbp + 0x150]
movzx eax, byte [rax + 0x18]
cmp al, 4
je 0x45ea0a
jmp 0x45ed5e
mov rax, qword [rbp + 0x150]
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x148], rax
mov rax, qword [rbp + 0x150]
mov rax, qword [rax + 0x30]
mov qword [rbp + 0x140], rax
mov qword [rbp + 0x288], 0
mov rax, qword [rbp + 0x290]
mov qword [rbp + 0x280], rax
jmp 0x45eb37
mov rdx, qword [rbp + 0x288]
mov rax, qword [rbp + 0x280]
add rax, rdx
shr rax, 1
mov qword [rbp + 0x278], rax
mov rax, qword [rbp + 0x278]
lea rdx, [rax*8]
mov rax, qword [rbp + 0x160]
add rax, rdx
mov rax, qword [rax]
mov qword [rbp + 0x138], rax
mov rax, qword [rbp + 0x138]
mov rax, qword [rax + 0x30]
mov rdx, qword [rbp + 0x140]
sub rdx, rax
mov rax, rdx
mov qword [rbp + 0x130], rax
cmp qword [rbp + 0x130], 0
jns 0x45eac3
mov rax, qword [rbp + 0x278]
mov qword [rbp + 0x280], rax
jmp 0x45eb37
cmp qword [rbp + 0x130], 0
jle 0x45eae1
mov rax, qword [rbp + 0x278]
add rax, 1
mov qword [rbp + 0x288], rax
jmp 0x45eb37
mov rax, qword [rbp + 0x148]
mov edx, dword [rax + 8]
mov rax, qword [rbp + 0x138]
mov rax, qword [rax + 0x28]
mov eax, dword [rax + 8]
sub edx, eax
mov eax, edx
mov dword [rbp + 0x12c], eax
cmp dword [rbp + 0x12c], 0
jns 0x45eb1c
mov rax, qword [rbp + 0x278]
mov qword [rbp + 0x280], rax
jmp 0x45eb37
cmp dword [rbp + 0x12c], 0
jle 0x45eb4d
mov rax, qword [rbp + 0x278]
add rax, 1
mov qword [rbp + 0x288], rax
mov rax, qword [rbp + 0x288]
cmp rax, qword [rbp + 0x280]
jne 0x45ea4c
jmp 0x45eb4e
nop
mov rax, qword [rbp + 0x288]
cmp rax, qword [rbp + 0x280]
jne 0x45ebb6
jmp 0x45ed5e
mov rax, qword [rbp + 0x278]
lea rdx, [rax*8]
mov rax, qword [rbp + 0x160]
add rax, rdx
mov rax, qword [rax]
mov qword [rbp + 0x138], rax
mov rax, qword [rbp + 0x138]
mov rax, qword [rax + 0x28]
cmp qword [rbp + 0x148], rax
jne 0x45ed3f
mov rax, qword [rbp + 0x138]
mov rax, qword [rax + 0x30]
cmp qword [rbp + 0x140], rax
jne 0x45ed3f
add qword [rbp + 0x278], 1
mov rax, qword [rbp + 0x278]
cmp rax, qword [rbp + 0x280]
jne 0x45eb63
jmp 0x45ed3f
mov rax, qword [rbp + 0x278]
lea rdx, [rax*8]
mov rax, qword [rbp + 0x160]
add rax, rdx
mov rax, qword [rax]
mov qword [rbp + 0x138], rax
mov rax, qword [rbp + 0x138]
mov rax, qword [rax + 0x28]
cmp qword [rbp + 0x148], rax
jne 0x45ed5e
mov rax, qword [rbp + 0x138]
mov rax, qword [rax + 0x30]
cmp qword [rbp + 0x140], rax
jne 0x45ed5e
mov rax, qword [rbp + 0x138]
cmp rax, qword [rbp + 0x150]
je 0x45ed3f
mov rax, qword [rbp + 0x150]
mov rdx, qword [rbp + 0x138]
mov qword [rax + 0x68], rdx
mov rax, qword [rbp + 0x150]
movzx edx, byte [rax + 0x5d]
or edx, 0x20
mov byte [rax + 0x5d], dl
mov rax, qword [rbp + 0x138]
mov qword [rbp + 0x270], rax
mov rax, qword [rbp + 0x270]
mov rax, qword [rax + 0x68]
test rax, rax
je 0x45eca3
jmp 0x45ec8f
mov rax, qword [rbp + 0x270]
mov rax, qword [rax + 0x68]
mov qword [rbp + 0x270], rax
mov rax, qword [rbp + 0x270]
mov rax, qword [rax + 0x68]
cmp qword [rbp + 0x138], rax
jne 0x45ec7d
mov rax, qword [rbp + 0x270]
mov rdx, qword [rbp + 0x150]
mov qword [rax + 0x68], rdx
mov rax, qword [rbp + 0x150]
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
je 0x45ed05
mov rax, qword [rbp + 0x138]
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
jne 0x45ed05
mov rdx, qword [rbp + 0x138]
mov rax, qword [rbp + 0x488]
mov rcx, rax
call fcn.004551a9
test eax, eax
jne 0x45ed05
nop
jmp 0x45ecf1
nop
mov rax, qword [rbp + 0x160]
mov rcx, rax
call sub.msvcrt.dll_free
jmp 0x45f131
mov rax, qword [rbp + 0x138]
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
je 0x45ed5e
mov rax, qword [rbp + 0x150]
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
jne 0x45ed5e
mov rdx, qword [rbp + 0x150]
mov rax, qword [rbp + 0x488]
mov rcx, rax
call fcn.004551a9
test eax, eax
je 0x45ecf0
jmp 0x45ed5e
mov rax, qword [rbp + 0x278]
lea rdx, [rax - 1]
mov qword [rbp + 0x278], rdx
cmp qword [rbp + 0x288], rax
jne 0x45ebd3
cmp qword [rbp + 0x430], 0
jne 0x45e9ad
mov rax, qword [rbp + 0x160]
mov rcx, rax
call sub.msvcrt.dll_free
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0xf0]
test rax, rax
je 0x45edba
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0xf0]
mov rdx, qword [rbp + 0x488]
mov rcx, qword [rbp + 0x480]
call rax
test eax, eax
jne 0x45edba
mov eax, 0
jmp 0x45f136
cmp dword [rbp + 0x44c], 0
jne 0x45efd8
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 4]
and eax, 0x20
test al, al
jne 0x45efd8
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x40]
cmp eax, 1
jne 0x45efd8
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 1]
and eax, 0x60
cmp al, 0x60
je 0x45efd8
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 1]
and eax, 0x60
cmp al, 0x20
je 0x45efd8
lea rdx, [0x004f6db0]
mov rcx, qword [rbp + 0x480]
call fcn.00415b32
mov qword [rbp + 0x120], rax
cmp qword [rbp + 0x120], 0
je 0x45efd8
mov qword [rbp + 8], 0
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0x88]
mov qword [rbp + 0x268], rax
jmp 0x45efca
mov rax, qword [rbp + 0x268]
mov rax, qword [rax]
mov r8d, 5
lea rdx, str..stab
mov rcx, rax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x45efb8
mov rax, qword [rbp + 0x268]
mov rax, qword [rax]
add rax, 5
movzx eax, byte [rax]
test al, al
je 0x45eeee
mov rax, qword [rbp + 0x268]
mov rax, qword [rax]
add rax, 5
movzx eax, byte [rax]
cmp al, 0x2e
jne 0x45efb8
mov rax, qword [rbp + 0x268]
mov rax, qword [rax]
add rax, 6
movzx eax, byte [rax]
movsx eax, al
movzx edx, al
mov rax, qword [0x005196c0]
movsxd rdx, edx
movzx eax, word [rax + rdx*2]
movzx eax, ax
and eax, 4
test eax, eax
je 0x45efb8
mov rax, qword [rbp + 0x268]
mov eax, dword [rax + 0x20]
and eax, 0x800000
test eax, eax
jne 0x45efb8
mov rax, qword [rbp + 0x268]
mov rax, qword [rax + 0x68]
mov rdx, qword [0x00519620]
add rdx, 0x230
cmp rax, rdx
je 0x45efb8
mov rax, qword [rbp + 0x268]
mov rax, qword [rax + 0xe0]
mov qword [rbp + 0x118], rax
mov rax, qword [rbp + 0x118]
lea r9, [rax + 0xd8]
mov rax, qword [rbp + 0x260]
lea rdx, [rax + 0xf0]
mov r8, qword [rbp + 0x120]
mov rcx, qword [rbp + 0x268]
lea rax, [rbp + 8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rcx
mov rcx, qword [rbp + 0x480]
call fcn.00492afe
test eax, eax
je 0x45f12a
mov rax, qword [rbp + 0x118]
mov rax, qword [rax + 0xd8]
test rax, rax
je 0x45efb8
mov rax, qword [rbp + 0x268]
movzx edx, word [rax + 0x24]
and dx, 0xfc7f
or dl, 0x80
mov word [rax + 0x24], dx
mov rax, qword [rbp + 0x268]
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x268], rax
cmp qword [rbp + 0x268], 0
jne 0x45ee66
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x40]
cmp eax, 1
jne 0x45f055
cmp dword [rbp + 0x40c], 0
je 0x45f055
mov edx, 0x10
mov rcx, qword [rbp + 0x480]
call fcn.0041439f
mov qword [rbp + 0x110], rax
cmp qword [rbp + 0x110], 0
je 0x45f12d
mov rax, qword [rbp + 0x110]
mov rdx, qword [rbp + 0x480]
mov qword [rax + 8], rdx
mov rax, qword [rbp + 0x260]
mov rdx, qword [rax + 0x170]
mov rax, qword [rbp + 0x110]
mov qword [rax], rdx
mov rax, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x110]
mov qword [rax + 0x170], rdx
mov eax, 1
jmp 0x45f136
nop
jmp 0x45f08a
nop
jmp 0x45f08a
nop
jmp 0x45f08a
nop
jmp 0x45f08a
nop
jmp 0x45f08a
nop
jmp 0x45f08a
nop
jmp 0x45f08a
nop
jmp 0x45f08a
nop
jmp 0x45f08a
nop
jmp 0x45f08a
nop
jmp 0x45f08a
nop
jmp 0x45f08a
nop
jmp 0x45f08a
nop
jmp 0x45f08a
nop
cmp qword [rbp + 0x3e8], 0
je 0x45f0a3
mov rax, qword [rbp + 0x3e8]
mov rcx, rax
call sub.msvcrt.dll_free
cmp qword [rbp + 0x3c8], 0
je 0x45f0bc
mov rax, qword [rbp + 0x3c8]
mov rcx, rax
call sub.msvcrt.dll_free
cmp qword [rbp + 0x428], 0
je 0x45f0d5
mov rax, qword [rbp + 0x428]
mov rcx, rax
call sub.msvcrt.dll_free
cmp qword [rbp + 0x440], 0
je 0x45f0f9
mov rax, qword [rbp + 0x440]
mov rcx, rax
call sub.msvcrt.dll_free
jmp 0x45f0fa
nop
jmp 0x45f0fa
nop
jmp 0x45f0fa
nop
jmp 0x45f0fa
nop
cmp qword [rbp + 0x418], 0
je 0x45f130
mov rax, qword [rbp + 0x418]
mov rcx, rax
call sub.msvcrt.dll_free
jmp 0x45f131
nop
jmp 0x45f131
nop
jmp 0x45f131
nop
jmp 0x45f131
nop
jmp 0x45f131
nop
jmp 0x45f131
nop
jmp 0x45f131
nop
jmp 0x45f131
nop
jmp 0x45f131
nop
jmp 0x45f131
nop
mov eax, 0
add rsp, 0x4f0
pop rbp
ret