Function at 0x48eeda
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 0x48efd5
mov dword [rbp + 0x44c], 0
jmp 0x48f04d
mov dword [rbp + 0x44c], 1
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
je 0x48f01e
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x40]
cmp eax, 1
jne 0x48f01e
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 0x48f04d
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
jne 0x48f03e
mov ecx, 5
call fcn.0043833d
jmp 0x493051
mov ecx, 3
call fcn.0043833d
jmp 0x493051
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 0x48f128
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 0x48f128
mov rax, qword [rbp + 0x258]
mov eax, dword [rax + 0x2f8]
test eax, eax
je 0x48f0c8
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 0x48f0f8
mov rax, qword [rbp + 0x258]
mov eax, dword [rax + 0x2fc]
test eax, eax
je 0x48f128
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 0x48f128
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.004397d1
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0x88]
mov qword [rbp + 0x3b8], rax
jmp 0x48f34f
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 0x48f33d
add qword [rbp + 0xa8], 0xd
cmp dword [rbp + 0x44c], 0
je 0x48f1e9
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.00440e3b
mov qword [rbp + 0xa0], rax
cmp qword [rbp + 0xa0], 0
je 0x48f1e9
mov rax, qword [rbp + 0xa0]
movzx eax, byte [rax + 0x18]
cmp al, 3
je 0x48f33c
mov rax, qword [rbp + 0xa0]
movzx eax, byte [rax + 0x18]
cmp al, 4
je 0x48f33c
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.0044699f
mov qword [rbp + 0x90], rax
cmp qword [rbp + 0x90], 0
je 0x493035
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.0044a45e
test eax, eax
je 0x493038
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.00442199
test eax, eax
je 0x49303b
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
test al, al
je 0x48f312
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 1
jne 0x48f33d
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 0x48f33d
nop
mov rax, qword [rbp + 0x3b8]
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x3b8], rax
cmp qword [rbp + 0x3b8], 0
jne 0x48f142
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0x88]
mov qword [rbp + 0x3b8], rax
cmp qword [rbp + 0x3b8], 0
je 0x48f398
mov rax, qword [rbp + 0x3b8]
movzx eax, word [rax + 0x24]
and ax, 0x380
cmp ax, 0x200
jne 0x48f398
mov eax, 1
jmp 0x48f39d
mov eax, 0
mov dword [rbp + 0x24c], eax
mov dword [rbp + 0x40c], 1
cmp dword [rbp + 0x44c], 0
jne 0x48f4a6
cmp dword [rbp + 0x24c], 0
jne 0x48fdad
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 3
je 0x48f43b
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 1
je 0x48f43b
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
je 0x48fdad
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 7]
and eax, 8
test al, al
je 0x48fdad
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 0x10
test al, al
jne 0x48f43b
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 5]
and eax, 0x40
test al, al
je 0x48fdad
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x40]
cmp eax, 1
jne 0x48fdad
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 0x48fdad
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x4c]
test eax, eax
jne 0x48fdad
mov rax, qword [rbp + 0x488]
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0048888d
test eax, eax
jne 0x48fdad
jmp 0x493051
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x40]
cmp eax, 1
jne 0x49303e
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 0x48f506
lea r8, str.elf_link_add_object_symbols
mov edx, 0xfc9
lea rcx, str._workdir_repo_binutils_gdb_gnu_bfd_elflink.c
call fcn.00439a52
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.00449a52
mov qword [rbp + 0x3b8], rax
cmp qword [rbp + 0x3b8], 0
je 0x48fb14
lea rdx, [rbp + 0x78]
mov rax, qword [rbp + 0x3b8]
mov r8, rdx
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0044a5fa
test eax, eax
jne 0x48f5a3
nop
jmp 0x48f592
nop
jmp 0x48f592
nop
jmp 0x48f592
nop
jmp 0x48f592
nop
jmp 0x48f592
nop
jmp 0x48f592
nop
mov rax, qword [rbp + 0x78]
mov rcx, rax
call sub.msvcrt.dll_free
jmp 0x493051
mov rax, qword [rbp + 0x3b8]
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0047ccdc
mov dword [rbp + 0x248], eax
cmp dword [rbp + 0x248], 0xfffffeff
je 0x48f582
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 0x48fae9
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 0x48f675
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.0046e7fb
mov qword [rbp + 0x3b0], rax
cmp qword [rbp + 0x3b0], 0
je 0x48f585
mov rax, qword [rbp + 0x60]
cmp rax, 1
jne 0x48f7d3
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.0044699f
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.0046e7fb
mov qword [rbp + 0x220], rax
cmp qword [rbp + 0x228], 0
je 0x48f588
cmp qword [rbp + 0x220], 0
je 0x48f588
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.0044699f
mov qword [rbp + 0x218], rax
cmp qword [rbp + 0x218], 0
je 0x48f58b
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 0x48f7b3
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 0x48f7a2
mov rax, qword [rbp + 0x390]
mov rdx, qword [rbp + 0x228]
mov qword [rax], rdx
mov rax, qword [rbp + 0x60]
cmp rax, 0x1d
jne 0x48f92b
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.0044699f
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.0046e7fb
mov qword [rbp + 0x200], rax
cmp qword [rbp + 0x208], 0
je 0x48f588
cmp qword [rbp + 0x200], 0
je 0x48f588
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.0044699f
mov qword [rbp + 0x1f8], rax
cmp qword [rbp + 0x1f8], 0
je 0x48f58e
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 0x48f90b
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 0x48f8fa
mov rax, qword [rbp + 0x388]
mov rdx, qword [rbp + 0x208]
mov qword [rax], rdx
mov rax, qword [rbp + 0x80]
test rax, rax
jne 0x48fa93
mov rax, qword [rbp + 0x60]
cmp rax, 0xf
jne 0x48fa93
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.0044699f
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.0046e7fb
mov qword [rbp + 0x1e0], rax
cmp qword [rbp + 0x1e8], 0
je 0x48f588
cmp qword [rbp + 0x1e0], 0
je 0x48f588
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.0044699f
mov qword [rbp + 0x1d8], rax
cmp qword [rbp + 0x1d8], 0
je 0x48f591
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 0x48fa73
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 0x48fa62
mov rax, qword [rbp + 0x380]
mov rdx, qword [rbp + 0x1e8]
mov qword [rax], rdx
mov rax, qword [rbp + 0x60]
cmp rax, 0x6ffffefc
jne 0x48facd
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.0046e7fb
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 0x48f606
mov rax, qword [rbp + 0x78]
mov rcx, rax
call sub.msvcrt.dll_free
mov rax, qword [rbp + 0x80]
test rax, rax
je 0x48fb2e
mov rax, qword [rbp + 0x80]
mov qword [rbp + 0x88], rax
mov rax, qword [rbp + 0x88]
test rax, rax
je 0x48fb81
mov rax, qword [rbp + 0x260]
add rax, 0x158
mov qword [rbp + 0x378], rax
jmp 0x48fb61
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 0x48fb50
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 0x48fc90
mov rax, qword [rbp + 0x3a0]
mov eax, dword [rax]
cmp eax, 0x6474e552
jne 0x48fc90
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0x88]
mov qword [rbp + 0x3b8], rax
jmp 0x48fc80
mov rax, qword [rbp + 0x3b8]
mov eax, dword [rax + 0x20]
and eax, 1
test eax, eax
je 0x48fc6e
mov rax, qword [rbp + 0x3b8]
mov rdx, qword [rax + 0x28]
mov rax, qword [rbp + 0x3a0]
mov rax, qword [rax + 0x10]
cmp rdx, rax
jb 0x48fc6e
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 0x48fc6e
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 0x48fbf1
jmp 0x48fcbd
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 0x48fbc3
mov rcx, qword [rbp + 0x480]
call fcn.004499df
cmp qword [rbp + 0x3b0], 0
je 0x48fce1
mov rax, qword [rbp + 0x3b0]
movzx eax, byte [rax]
test al, al
jne 0x48fd26
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 0x48fd15
mov rax, qword [rbp + 0x3b0]
movzx eax, byte [rax]
test al, al
jne 0x48fd26
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.0048e3fe
mov dword [rbp + 0x1d0], eax
cmp dword [rbp + 0x1d0], 0
js 0x493041
cmp dword [rbp + 0x1d0], 0
jle 0x48fd91
mov eax, 1
jmp 0x493056
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 0x48fdce
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0xc74]
test eax, eax
jne 0x48fde9
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
add rax, 0x60
mov qword [rbp + 0x468], rax
jmp 0x48fe04
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 0x48fe6a
mov rax, qword [rbp + 0x1c8]
mov qword [rbp + 0x460], rax
mov qword [rbp + 0x458], 0
jmp 0x48fe9a
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 0x48ff85
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.0046e96d
mov qword [rbp + 0x418], rax
cmp qword [rbp + 0x418], 0
je 0x493044
cmp qword [rbp + 0x450], 0
jne 0x48ff85
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.00446af9
mov qword [rbp + 0x450], rax
cmp qword [rbp + 0x450], 0
je 0x493010
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 0x49007c
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.00481477
test eax, eax
je 0x493013
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0xc78]
test eax, eax
je 0x49007c
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.0043f903
mov qword [rbp + 0x440], rax
cmp qword [rbp + 0x440], 0
je 0x493016
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.0043b4dd
test eax, eax
jne 0x492f7f
mov rdx, qword [rbp + 0x230]
mov rax, qword [rbp + 0x440]
mov r8, qword [rbp + 0x480]
mov rcx, rax
call fcn.0043b107
cmp qword [rbp + 0x230], rax
jne 0x492f7f
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 0x4903b5
mov qword [rbp + 0x368], 0
mov dword [rbp + 0x374], 0
jmp 0x490148
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 0x490137
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 0x490126
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 0x4900e3
add dword [rbp + 0x374], 1
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x18]
cmp dword [rbp + 0x374], eax
jb 0x4900c0
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.0043f903
mov qword [rbp + 0x3e8], rax
cmp qword [rbp + 0x3e8], 0
je 0x492f82
mov rax, qword [rbp + 0x260]
mov edx, 1
mov rcx, rax
call fcn.0043f069
mov qword [rbp + 0x400], rax
cmp qword [rbp + 0x400], 0
je 0x492f85
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 0x492f88
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.004ab028
mov qword [rbp + 0x3c8], rax
cmp qword [rbp + 0x3c8], 0
je 0x492f8b
mov dword [rbp + 0x374], 0
jmp 0x49039f
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 0x49038a
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 0x490379
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 0x4902e8
add dword [rbp + 0x374], 1
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x18]
cmp dword [rbp + 0x374], eax
jb 0x4902c2
mov qword [rbp + 0x430], 0
cmp qword [rbp + 0x440], 0
je 0x4903e1
mov rax, qword [rbp + 0x458]
lea rdx, [rax + rax]
mov rax, qword [rbp + 0x440]
add rax, rdx
jmp 0x4903e6
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 0x491d57
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 0x490496
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 7]
and eax, 0x40
test al, al
je 0x490496
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 0x4904dd
cmp eax, 1
jg 0x4904d1
test eax, eax
je 0x491d1d
jmp 0x490510
cmp eax, 2
je 0x4904fd
cmp eax, 0xa
je 0x490506
jmp 0x490510
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
test eax, eax
je 0x49050f
cmp dword [rbp + 0x348], 0
jne 0x49050f
mov dword [rbp + 0x4c], 2
jmp 0x49050f
mov dword [rbp + 0x4c], pe_nt_image_headers64
jmp 0x490510
mov dword [rbp + 0x4c], 0x800000
jmp 0x490510
nop
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
test eax, eax
jne 0x490534
mov rax, qword [0x00586430]
add rax, 0x118
mov qword [rbp + 0x50], rax
jmp 0x490672
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
cmp eax, 0xfffffff1
jne 0x490559
mov rax, qword [0x00586430]
add rax, 0x230
mov qword [rbp + 0x50], rax
jmp 0x490672
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
cmp eax, 0xfffffff2
jne 0x490587
mov rax, qword [0x00586430]
mov qword [rbp + 0x50], rax
mov rax, qword [rbp + 0x410]
mov rax, qword [rax + 8]
mov qword [rbp + 0x58], rax
jmp 0x490672
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
mov edx, eax
mov rcx, qword [rbp + 0x480]
call fcn.00474126
mov qword [rbp + 0x50], rax
mov rax, qword [rbp + 0x50]
test rax, rax
jne 0x4905c2
mov rax, qword [0x00586430]
add rax, 0x230
mov qword [rbp + 0x50], rax
jmp 0x490672
mov rax, qword [rbp + 0x50]
mov rdx, qword [0x00586430]
add rdx, 0x230
cmp rax, rdx
je 0x490643
mov rax, qword [rbp + 0x50]
mov rax, qword [rax + 0x68]
mov rdx, qword [0x00586430]
add rdx, 0x230
cmp rax, rdx
jne 0x490643
mov rax, qword [rbp + 0x50]
movzx eax, word [rax + 0x24]
and ax, 0x380
cmp ax, 0x100
je 0x490643
mov rax, qword [rbp + 0x50]
movzx eax, word [rax + 0x24]
and ax, 0x380
cmp ax, 0x200
je 0x490643
mov rax, qword [0x00586430]
add rax, 0x118
mov qword [rbp + 0x50], rax
mov dword [rbp + 0x344], 1
mov rax, qword [rbp + 0x410]
mov dword [rax + 0x18], 0
jmp 0x490672
mov rax, qword [rbp + 0x480]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x42
test eax, eax
je 0x490672
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.0046e7fb
mov qword [rbp + 0x40], rax
mov rax, qword [rbp + 0x40]
test rax, rax
je 0x492f8e
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
cmp eax, 0xfffffff2
jne 0x490745
mov rax, qword [rbp + 0x480]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x10000
test eax, eax
je 0x490745
lea rdx, str.COMMON
mov rcx, qword [rbp + 0x480]
call fcn.00449a52
mov qword [rbp + 0x338], rax
cmp qword [rbp + 0x338], 0
jne 0x490735
mov dword [rbp + 0x104], 0x209001
mov eax, dword [rbp + 0x104]
mov r8d, eax
lea rdx, str.COMMON
mov rcx, qword [rbp + 0x480]
call fcn.0044a021
mov qword [rbp + 0x338], rax
cmp qword [rbp + 0x338], 0
je 0x492f91
mov rax, qword [rbp + 0x338]
mov qword [rbp + 0x50], rax
jmp 0x490857
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
cmp eax, 0xfffffff2
jne 0x4907eb
mov rax, qword [rbp + 0x410]
movzx eax, byte [rax + 0x14]
movzx eax, al
and eax, 0xf
cmp eax, 6
jne 0x4907eb
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
je 0x4907eb
lea rdx, str..tcommon
mov rcx, qword [rbp + 0x480]
call fcn.00449a52
mov qword [rbp + 0x330], rax
cmp qword [rbp + 0x330], 0
jne 0x4907de
mov dword [rbp + 0x100], 0x101401
mov eax, dword [rbp + 0x100]
mov r8d, eax
lea rdx, str..tcommon
mov rcx, qword [rbp + 0x480]
call fcn.0044a021
mov qword [rbp + 0x330], rax
cmp qword [rbp + 0x330], 0
je 0x492f94
mov rax, qword [rbp + 0x330]
mov qword [rbp + 0x50], rax
jmp 0x490857
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0xc0]
test rax, rax
je 0x490857
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 0x492f97
mov rax, qword [rbp + 0x40]
test rax, rax
je 0x491d20
mov rax, qword [rbp + 0x50]
test rax, rax
jne 0x49086f
mov ecx, 0x11
call fcn.0043833d
jmp 0x492faa
mov rax, qword [rbp + 0x410]
movzx eax, byte [rax + 0x14]
movzx eax, al
and eax, 0xf
cmp eax, 6
jne 0x49089b
mov rax, qword [rbp + 0x50]
movzx eax, word [rax + 0x24]
and ax, 0x380
cmp ax, 0x200
je 0x491d23
mov rax, qword [rbp + 0x50]
mov rdx, qword [0x00586430]
add rdx, 0x118
cmp rax, rdx
je 0x4908c2
mov rax, qword [rbp + 0x50]
mov eax, dword [rax + 0x20]
and eax, 0x1000
test eax, eax
je 0x4908ce
mov dword [rbp + 0x34c], 0
jmp 0x4908d8
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 0x490ecc
mov dword [rbp + 0xf4], 0
cmp qword [rbp + 0x438], 0
jne 0x49097b
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 4]
and eax, 0xffffff80
test al, al
je 0x490973
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0x338]
mov word [rbp + 0x1a], ax
jmp 0x490998
mov word [rbp + 0x1a], 0
jmp 0x490998
lea rdx, [rbp + 0x1a]
mov rax, qword [rbp + 0x438]
mov r8, rdx
mov rdx, rax
mov rcx, qword [rbp + 0x480]
call fcn.0046e34f
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 0x490a02
cmp dword [rbp + 0xf4], 1
jbe 0x490cfe
mov rax, qword [rbp + 0x50]
mov rdx, qword [0x00586430]
add rdx, 0x230
cmp rax, rdx
jne 0x490a02
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 0x490cfe
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
test eax, eax
je 0x490ae0
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0x338]
cmp dword [rbp + 0xf4], eax
jbe 0x490a3d
mov qword [rbp + 0x328], 0
jmp 0x490a88
cmp dword [rbp + 0xf4], 1
jbe 0x490a7a
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 0x490a88
lea rax, [0x00578111]
mov qword [rbp + 0x328], rax
cmp qword [rbp + 0x328], 0
jne 0x490bc8
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.004397d1
mov ecx, 0x11
call fcn.0043833d
jmp 0x490ec7
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 0x490b7f
mov rax, qword [rbp + 0x310]
mov rax, qword [rax + 0x20]
mov qword [rbp + 0x308], rax
jmp 0x490b59
mov rax, qword [rbp + 0x308]
movzx eax, word [rax + 6]
movzx eax, ax
cmp dword [rbp + 0xf4], eax
jne 0x490b47
mov rax, qword [rbp + 0x308]
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x328], rax
jmp 0x490b63
mov rax, qword [rbp + 0x308]
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x308], rax
cmp qword [rbp + 0x308], 0
jne 0x490b1d
cmp qword [rbp + 0x308], 0
jne 0x490b8b
mov rax, qword [rbp + 0x310]
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x310], rax
cmp qword [rbp + 0x310], 0
jne 0x490b09
jmp 0x490b8c
nop
cmp qword [rbp + 0x328], 0
jne 0x490bc8
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.004397d1
mov ecx, 0x11
call fcn.0043833d
jmp 0x490ec7
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 0x490c2c
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
test eax, eax
je 0x490c2c
add qword [rbp + 0x320], 1
mov rax, qword [rbp + 0x320]
mov edx, eax
mov rax, qword [rbp + 0x260]
mov rcx, rax
call fcn.0043f069
mov qword [rbp + 0xd8], rax
cmp qword [rbp + 0xd8], 0
je 0x490ec0
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 0x490ccf
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
test eax, eax
je 0x490ccf
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 [0x00586430]
add rdx, 0x118
cmp rax, rdx
je 0x490d63
cmp dword [rbp + 0x44c], 0
jne 0x490d63
mov rax, qword [rbp + 0x480]
movzx eax, byte [rax + 0x43]
and eax, 0x20
test al, al
je 0x490d63
mov rax, qword [rbp + 0x410]
movzx eax, byte [rax + 0x15]
movzx eax, al
and eax, 3
cmp eax, 1
je 0x490d63
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.00489f0b
test eax, eax
je 0x490ec6
mov eax, dword [rbp + 0x14]
test eax, eax
je 0x490e05
nop
jmp 0x491d1d
mov eax, dword [rbp + 0x30]
test eax, eax
je 0x490e1d
mov eax, dword [rbp + 0x1c]
test eax, eax
je 0x490e1d
mov dword [rbp + 0x34c], 0
mov rax, qword [rbp + 0x450]
mov rax, qword [rax]
mov qword [rbp + 0x350], rax
jmp 0x490e42
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 0x490e30
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 7
je 0x490e30
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x340]
test rax, rax
je 0x490ecc
cmp dword [rbp + 0xf4], 1
jbe 0x490ecc
cmp dword [rbp + 0x34c], 0
je 0x490ecc
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 0x490ecc
nop
jmp 0x492f8e
nop
jmp 0x492f8e
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.00442199
test eax, eax
je 0x492f9a
mov rax, qword [rbp + 0x480]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x40
test eax, eax
jne 0x49103b
mov rax, qword [rbp + 0x488]
mov rax, qword [rax + 0x50]
mov rax, qword [rax + 8]
mov eax, dword [rax + 8]
cmp eax, 5
jne 0x49103b
mov rax, qword [rbp + 0x410]
movzx eax, byte [rax + 0x14]
movzx eax, al
and eax, 0xf
cmp eax, 0xa
jne 0x490fdf
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 0x49103b
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 0x49106e
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 0x49105c
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 7
je 0x49105c
cmp dword [rbp + 0x344], 0
je 0x4910a3
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 0x49114b
cmp dword [rbp + 0x34c], 0
je 0x49114b
cmp dword [rbp + 0xcc], 0
je 0x49114b
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 0x49114b
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x40]
cmp eax, 1
jne 0x49114b
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x68]
test rax, rax
jne 0x49114b
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 0x491164
mov rax, qword [rbp + 0x50]
mov eax, dword [rax + 0x20]
and eax, 0x1000
test eax, eax
je 0x4911d6
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 5
jne 0x4911d6
cmp dword [rbp + 0x348], 0
je 0x491196
mov rax, qword [rbp + 0x410]
mov rax, qword [rax]
mov rcx, rax
call fcn.004409a5
mov dword [rbp + 0x304], eax
jmp 0x4911a6
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 0x4911c6
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x28]
mov edx, dword [rbp + 0x304]
mov dword [rax], edx
jmp 0x4911d6
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 0x491d24
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 0x4913c7
cmp dword [rbp + 0x44c], 0
jne 0x491302
cmp dword [rbp + 0x34c], 0
jne 0x491252
mov rax, qword [rbp + 0x350]
movzx edx, byte [rax + 0x5b]
or edx, 1
mov byte [rax + 0x5b], dl
cmp dword [rbp + 0x108], 2
je 0x491297
mov rax, qword [rbp + 0x350]
movzx edx, byte [rax + 0x5b]
or edx, 0x10
mov byte [rax + 0x5b], dl
jmp 0x491297
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 0x491297
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 0x4912bd
mov rax, qword [rbp + 0xd0]
movzx eax, byte [rax + 0x5c]
and eax, 8
test al, al
jne 0x4913c7
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 3
je 0x4912f6
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5b]
and eax, 8
test al, al
jne 0x4912f6
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5b]
and eax, 4
test al, al
je 0x4913c7
mov dword [rbp + 0x10], 1
jmp 0x4913c7
cmp dword [rbp + 0x34c], 0
jne 0x49132f
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 0x491351
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 0x491373
mov rax, qword [rbp + 0xd0]
movzx eax, byte [rax + 0x5c]
and eax, 8
test al, al
jne 0x4913c7
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5b]
and eax, 2
test al, al
jne 0x4913c0
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5b]
and eax, 1
test al, al
jne 0x4913c0
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5d]
and eax, 0x20
test al, al
je 0x4913c7
mov rax, qword [rbp + 0x350]
mov rcx, rax
call fcn.004881a1
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
je 0x4913c7
mov dword [rbp + 0x10], 1
cmp dword [rbp + 0x34c], 0
jne 0x4913e6
mov eax, dword [rbp + 0x30]
test eax, eax
jne 0x491442
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 5
jne 0x491442
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.0048b370
test eax, eax
je 0x492f9d
mov eax, dword [rbp + 0x2c]
test eax, eax
jne 0x491456
cmp dword [rbp + 0x348], 0
je 0x491649
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 5
je 0x491649
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 3
je 0x491498
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 4
je 0x491498
mov edx, 0x12fd
lea rcx, str._workdir_repo_binutils_gdb_gnu_bfd_elflink.c
call fcn.00439a1b
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x30]
mov ecx, eax
call fcn.004fb630
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 0x491520
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 0x491520
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 0x49152c
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0x2fc], eax
jmp 0x49152c
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0x2fc], eax
mov eax, dword [rbp + 0x2c]
test eax, eax
je 0x491557
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 0x491588
mov rax, qword [rbp + 0x410]
mov rax, qword [rax]
mov rcx, rax
call fcn.004409a5
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 0x491649
cmp qword [rbp + 0x2f0], 0
jne 0x4915fd
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.004397d1
jmp 0x491649
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.004397d1
mov rax, qword [rbp + 0x410]
mov rax, qword [rax + 8]
test rax, rax
je 0x491712
mov rax, qword [rbp + 0x410]
mov eax, dword [rax + 0x18]
test eax, eax
je 0x491712
cmp dword [rbp + 0x34c], 0
jne 0x49168c
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x50]
test rax, rax
jne 0x491712
mov rax, qword [rbp + 0x350]
mov rax, qword [rax + 0x50]
test rax, rax
je 0x4916fc
mov rax, qword [rbp + 0x350]
mov rdx, qword [rax + 0x50]
mov rax, qword [rbp + 0x410]
mov rax, qword [rax + 8]
cmp rdx, rax
je 0x4916fc
mov eax, dword [rbp + 0x3c]
test eax, eax
jne 0x4916fc
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.004397d1
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 0x491737
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 0x491846
cmp dword [rbp + 0x34c], 0
je 0x491762
cmp dword [rbp + 0xcc], 0
je 0x49178b
mov eax, dword [rbp + 0x34]
test eax, eax
je 0x491778
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x18]
cmp al, 5
je 0x49178b
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x58]
test al, al
jne 0x491846
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 0x4917ce
mov rax, qword [rbp + 0x480]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x40
test eax, eax
je 0x4917ce
mov dword [rbp + 0x2e4], 2
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x58]
movzx eax, al
cmp dword [rbp + 0x2e4], eax
je 0x491846
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x58]
test al, al
je 0x491834
mov eax, dword [rbp + 0x38]
test eax, eax
jne 0x491834
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.004397d1
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.00489e25
cmp dword [rbp + 0x34c], 0
je 0x4918b2
mov rax, qword [rbp + 0x50]
mov eax, dword [rax + 0x20]
and eax, 0x2000
test eax, eax
je 0x4918b2
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
je 0x4918b2
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 0x4918d4
mov dword [rbp + 0x10], 0
cmp dword [rbp + 0x34c], 0
je 0x49191c
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 0x4919f5
cmp dword [rbp + 0x44c], 0
jne 0x4919f5
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 0x4919f5
mov rax, qword [rbp + 0xc0]
add rax, 1
movzx eax, byte [rax]
cmp al, 0x40
je 0x4919f5
cmp qword [rbp + 0x428], 0
jne 0x4919c7
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.0043f903
mov qword [rbp + 0x428], rax
cmp qword [rbp + 0x428], 0
je 0x491d0b
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 0x491a84
mov rax, qword [rbp + 0x350]
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
jne 0x491a84
mov rdx, qword [rbp + 0x350]
mov rax, qword [rbp + 0x488]
mov rcx, rax
call fcn.004890c9
test eax, eax
je 0x491d11
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5d]
and eax, 0x20
test al, al
je 0x491ad9
mov rax, qword [rbp + 0x350]
mov rcx, rax
call fcn.004881a1
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
jne 0x491ad9
mov rax, qword [rbp + 0x350]
mov rcx, rax
call fcn.004881a1
mov rdx, rax
mov rax, qword [rbp + 0x488]
mov rcx, rax
call fcn.004890c9
test eax, eax
jne 0x491ad9
jmp 0x491d18
mov rax, qword [rbp + 0x350]
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
je 0x491ada
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x59]
movzx eax, al
and eax, 3
sub eax, 1
cmp eax, 1
ja 0x491ada
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 0x491ada
nop
cmp dword [rbp + 0x40c], 0
jne 0x491d24
mov eax, dword [rbp + 0x1c]
test eax, eax
je 0x491d24
cmp dword [rbp + 0x34c], 0
je 0x491d24
mov eax, dword [rbp + 0x10]
test eax, eax
je 0x491b3d
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5b]
and eax, 0x10
test al, al
je 0x491b3d
mov rax, qword [rbp + 0x20]
test rax, rax
je 0x491bb6
mov rax, qword [rbp + 0x20]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x10000
test eax, eax
je 0x491bb6
mov rax, qword [rbp + 0x350]
movzx eax, byte [rax + 0x5d]
and eax, 1
test al, al
je 0x491d24
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 0x491d24
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.0048e5d6
test eax, eax
jne 0x491d24
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, [0x005782a2]
call rax
mov rax, qword [rbp + 0x20]
test rax, rax
je 0x491c5e
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 0x491c5e
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.004397d1
mov ecx, 0xb
call fcn.0043833d
jmp 0x491d18
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.0048e3fe
mov dword [rbp + 0xb4], eax
cmp dword [rbp + 0xb4], 0
js 0x491d17
cmp dword [rbp + 0xb4], 0
je 0x491d24
mov edx, 0x13cc
lea rcx, str._workdir_repo_binutils_gdb_gnu_bfd_elflink.c
call fcn.00439a1b
jmp 0x491d24
nop
jmp 0x492f8e
nop
jmp 0x492f8e
nop
jmp 0x492f8e
nop
jmp 0x491d24
nop
jmp 0x491d24
nop
add qword [rbp + 0x410], 0x20
add qword [rbp + 0x450], 8
cmp qword [rbp + 0x438], 0
je 0x491d4b
mov rax, qword [rbp + 0x438]
add rax, 2
jmp 0x491d50
mov eax, 0
mov qword [rbp + 0x438], rax
mov rax, qword [rbp + 0x410]
cmp rax, qword [rbp + 0x1a8]
jb 0x49041f
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 1]
and eax, 2
test al, al
je 0x49201e
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
and eax, 3
cmp al, 2
je 0x49201e
mov rax, qword [rbp + 0x480]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 0xfffff
and eax, 0x10000
test eax, eax
jne 0x49201e
cmp dword [rbp + 0x24c], 0
jne 0x49201e
cmp qword [rbp + 0x460], 0
je 0x49201e
mov rax, qword [rbp + 0x258]
mov rax, qword [rax + 0x300]
movzx eax, byte [rax + 0xa]
cmp al, 0x20
jne 0x491df2
mov dword [rbp + 0x2e0], 8
jmp 0x491dfc
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 0x492010
mov rax, qword [rbp + 0x3b8]
mov eax, dword [rax + 0x20]
and eax, 4
test eax, eax
je 0x491ffd
mov rax, qword [rbp + 0x3b8]
mov eax, dword [rax + 0x88]
test eax, eax
je 0x491ffd
mov rax, qword [rbp + 0x3b8]
mov eax, dword [rax + 0x20]
and eax, 0x8000
test eax, eax
jne 0x491ffd
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 1]
and eax, 0x60
cmp al, 0x60
je 0x491e97
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 1]
and eax, 0x60
cmp al, 0x20
jne 0x491eae
mov rax, qword [rbp + 0x3b8]
mov eax, dword [rax + 0x20]
and eax, 0x2000
test eax, eax
jne 0x491ffd
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.0048ca1f
mov qword [rbp + 0x1a0], rax
cmp qword [rbp + 0x1a0], 0
je 0x492fa0
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 0x491fba
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 0x491fb1
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 0x491fb2
mov rax, qword [rbp + 0x188]
movzx edx, byte [rax + 0x19]
or edx, 1
mov byte [rax + 0x19], dl
jmp 0x491fb2
nop
add qword [rbp + 0x2d8], 0x18
mov rax, qword [rbp + 0x2d8]
cmp rax, qword [rbp + 0x198]
jb 0x491f3d
mov rax, qword [rbp + 0x3b8]
mov rax, qword [rax + 0xe0]
mov rax, qword [rax + 0x98]
cmp qword [rbp + 0x1a0], rax
je 0x491ffe
mov rax, qword [rbp + 0x1a0]
mov rcx, rax
call sub.msvcrt.dll_free
jmp 0x491ffe
nop
mov rax, qword [rbp + 0x3b8]
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x3b8], rax
cmp qword [rbp + 0x3b8], 0
jne 0x491e32
cmp qword [rbp + 0x440], 0
je 0x492042
mov rax, qword [rbp + 0x440]
mov rcx, rax
call sub.msvcrt.dll_free
mov qword [rbp + 0x440], 0
cmp qword [rbp + 0x418], 0
je 0x492066
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 0x492429
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.004ab0c0
mov rax, qword [rbp + 0x3c8]
mov rcx, rax
call sub.msvcrt.dll_free
mov qword [rbp + 0x3c8], 0
mov dword [rbp + 0x2d4], 0
jmp 0x49239b
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 0x492386
mov rax, qword [rbp + 0x2c8]
mov qword [rbp + 0x2c0], rax
mov rax, qword [rbp + 0x2c0]
movzx eax, byte [rax + 0x18]
cmp al, 7
jne 0x4921ef
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 0x492225
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 0x49223a
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 0x4922f6
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 0x492353
mov rax, qword [rbp + 0x2c0]
mov rax, qword [rax + 0x30]
cmp qword [rbp + 0x2b8], rax
jbe 0x49232b
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 0x492353
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 0x4921c0
add dword [rbp + 0x2d4], 1
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x18]
cmp dword [rbp + 0x2d4], eax
jb 0x49219a
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 0x492fa3
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.004f93d3
cmp qword [rbp + 0x428], 0
je 0x49241f
mov rax, qword [rbp + 0x428]
mov rcx, rax
call sub.msvcrt.dll_free
mov eax, 1
jmp 0x493056
cmp qword [rbp + 0x3e8], 0
je 0x492479
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 0x492fa6
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 0x49277b
cmp qword [rbp + 0x428], 0
je 0x49277b
mov qword [rbp + 0x2a8], 0
jmp 0x49274d
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 0x492744
mov rax, qword [rbp + 0x180]
movzx eax, byte [rax + 0x18]
cmp al, 3
je 0x49251e
mov rax, qword [rbp + 0x180]
movzx eax, byte [rax + 0x18]
cmp al, 4
jne 0x492744
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.0043f903
mov qword [rbp + 0x170], rax
cmp qword [rbp + 0x170], 0
je 0x492fa9
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.00440e3b
mov qword [rbp + 0x168], rax
cmp qword [rbp + 0x168], 0
je 0x492733
mov rax, qword [rbp + 0x168]
movzx edx, byte [rax + 0x18]
mov rax, qword [rbp + 0x180]
movzx eax, byte [rax + 0x18]
cmp dl, al
jne 0x492733
mov rax, qword [rbp + 0x168]
mov rdx, qword [rax + 0x30]
mov rax, qword [rbp + 0x180]
mov rax, qword [rax + 0x30]
cmp rdx, rax
jne 0x492733
mov rax, qword [rbp + 0x168]
mov rdx, qword [rax + 0x28]
mov rax, qword [rbp + 0x180]
mov rax, qword [rax + 0x28]
cmp rdx, rax
jne 0x492733
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 0x492733
mov qword [rbp + 0x2a0], 0
jmp 0x492723
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 0x49271b
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 0x492733
add qword [rbp + 0x2a0], 1
mov rax, qword [rbp + 0x2a0]
cmp rax, qword [rbp + 0x460]
jb 0x4926d1
mov rax, qword [rbp + 0x170]
mov rcx, rax
call sub.msvcrt.dll_free
jmp 0x492745
nop
add qword [rbp + 0x2a8], 1
mov rax, qword [rbp + 0x2a8]
cmp rax, qword [rbp + 0x420]
jb 0x4924ac
mov rax, qword [rbp + 0x428]
mov rcx, rax
call sub.msvcrt.dll_free
mov qword [rbp + 0x428], 0
cmp qword [rbp + 0x430], 0
je 0x492c9b
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.0043f903
mov qword [rbp + 0x160], rax
cmp qword [rbp + 0x160], 0
je 0x493047
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 0x492891
mov rax, qword [rbp + 0x298]
mov rax, qword [rax]
mov qword [rbp + 0x138], rax
cmp qword [rbp + 0x138], 0
je 0x492889
mov rax, qword [rbp + 0x138]
movzx eax, byte [rax + 0x18]
cmp al, 3
jne 0x492889
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 0x492889
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 0x49281a
mov rdx, qword [rbp + 0x290]
mov rax, qword [rbp + 0x160]
lea r9, [0x0048e68b]
mov r8d, 8
mov rcx, rax
call sub.msvcrt.dll_qsort
jmp 0x492c7e
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 0x49292a
mov rax, qword [rbp + 0x150]
movzx eax, byte [rax + 0x18]
cmp al, 4
je 0x49292a
jmp 0x492c7e
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 0x492a57
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 0x4929e3
mov rax, qword [rbp + 0x278]
mov qword [rbp + 0x280], rax
jmp 0x492a57
cmp qword [rbp + 0x130], 0
jle 0x492a01
mov rax, qword [rbp + 0x278]
add rax, 1
mov qword [rbp + 0x288], rax
jmp 0x492a57
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 0x492a3c
mov rax, qword [rbp + 0x278]
mov qword [rbp + 0x280], rax
jmp 0x492a57
cmp dword [rbp + 0x12c], 0
jle 0x492a6d
mov rax, qword [rbp + 0x278]
add rax, 1
mov qword [rbp + 0x288], rax
mov rax, qword [rbp + 0x288]
cmp rax, qword [rbp + 0x280]
jne 0x49296c
jmp 0x492a6e
nop
mov rax, qword [rbp + 0x288]
cmp rax, qword [rbp + 0x280]
jne 0x492ad6
jmp 0x492c7e
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 0x492c5f
mov rax, qword [rbp + 0x138]
mov rax, qword [rax + 0x30]
cmp qword [rbp + 0x140], rax
jne 0x492c5f
add qword [rbp + 0x278], 1
mov rax, qword [rbp + 0x278]
cmp rax, qword [rbp + 0x280]
jne 0x492a83
jmp 0x492c5f
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 0x492c7e
mov rax, qword [rbp + 0x138]
mov rax, qword [rax + 0x30]
cmp qword [rbp + 0x140], rax
jne 0x492c7e
mov rax, qword [rbp + 0x138]
cmp rax, qword [rbp + 0x150]
je 0x492c5f
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 0x492bc3
jmp 0x492baf
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 0x492b9d
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 0x492c25
mov rax, qword [rbp + 0x138]
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
jne 0x492c25
mov rdx, qword [rbp + 0x138]
mov rax, qword [rbp + 0x488]
mov rcx, rax
call fcn.004890c9
test eax, eax
jne 0x492c25
nop
jmp 0x492c11
nop
mov rax, qword [rbp + 0x160]
mov rcx, rax
call sub.msvcrt.dll_free
jmp 0x493051
mov rax, qword [rbp + 0x138]
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
je 0x492c7e
mov rax, qword [rbp + 0x150]
mov eax, dword [rax + 0x3c]
cmp eax, 0xffffffff
jne 0x492c7e
mov rdx, qword [rbp + 0x150]
mov rax, qword [rbp + 0x488]
mov rcx, rax
call fcn.004890c9
test eax, eax
je 0x492c10
jmp 0x492c7e
mov rax, qword [rbp + 0x278]
lea rdx, [rax - 1]
mov qword [rbp + 0x278], rdx
cmp qword [rbp + 0x288], rax
jne 0x492af3
cmp qword [rbp + 0x430], 0
jne 0x4928cd
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 0x492cda
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 0x492cda
mov eax, 0
jmp 0x493056
cmp dword [rbp + 0x44c], 0
jne 0x492ef8
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 4]
and eax, 0x20
test al, al
jne 0x492ef8
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x40]
cmp eax, 1
jne 0x492ef8
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 1]
and eax, 0x60
cmp al, 0x60
je 0x492ef8
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax + 1]
and eax, 0x60
cmp al, 0x20
je 0x492ef8
lea rdx, [0x005782d0]
mov rcx, qword [rbp + 0x480]
call fcn.00449a52
mov qword [rbp + 0x120], rax
cmp qword [rbp + 0x120], 0
je 0x492ef8
mov qword [rbp + 8], 0
mov rax, qword [rbp + 0x480]
mov rax, qword [rax + 0x88]
mov qword [rbp + 0x268], rax
jmp 0x492eea
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 0x492ed8
mov rax, qword [rbp + 0x268]
mov rax, qword [rax]
add rax, 5
movzx eax, byte [rax]
test al, al
je 0x492e0e
mov rax, qword [rbp + 0x268]
mov rax, qword [rax]
add rax, 5
movzx eax, byte [rax]
cmp al, 0x2e
jne 0x492ed8
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 [0x005864d0]
movsxd rdx, edx
movzx eax, word [rax + rdx*2]
movzx eax, ax
and eax, 4
test eax, eax
je 0x492ed8
mov rax, qword [rbp + 0x268]
mov eax, dword [rax + 0x20]
and eax, 0x800000
test eax, eax
jne 0x492ed8
mov rax, qword [rbp + 0x268]
mov rax, qword [rax + 0x68]
mov rdx, qword [0x00586430]
add rdx, 0x230
cmp rax, rdx
je 0x492ed8
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.004bf95e
test eax, eax
je 0x49304a
mov rax, qword [rbp + 0x118]
mov rax, qword [rax + 0xd8]
test rax, rax
je 0x492ed8
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 0x492d86
mov rax, qword [rbp + 0x260]
mov eax, dword [rax + 0x40]
cmp eax, 1
jne 0x492f75
cmp dword [rbp + 0x40c], 0
je 0x492f75
mov edx, 0x10
mov rcx, qword [rbp + 0x480]
call fcn.0044699f
mov qword [rbp + 0x110], rax
cmp qword [rbp + 0x110], 0
je 0x49304d
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 0x493056
nop
jmp 0x492faa
nop
jmp 0x492faa
nop
jmp 0x492faa
nop
jmp 0x492faa
nop
jmp 0x492faa
nop
jmp 0x492faa
nop
jmp 0x492faa
nop
jmp 0x492faa
nop
jmp 0x492faa
nop
jmp 0x492faa
nop
jmp 0x492faa
nop
jmp 0x492faa
nop
jmp 0x492faa
nop
jmp 0x492faa
nop
cmp qword [rbp + 0x3e8], 0
je 0x492fc3
mov rax, qword [rbp + 0x3e8]
mov rcx, rax
call sub.msvcrt.dll_free
cmp qword [rbp + 0x3c8], 0
je 0x492fdc
mov rax, qword [rbp + 0x3c8]
mov rcx, rax
call sub.msvcrt.dll_free
cmp qword [rbp + 0x428], 0
je 0x492ff5
mov rax, qword [rbp + 0x428]
mov rcx, rax
call sub.msvcrt.dll_free
cmp qword [rbp + 0x440], 0
je 0x493019
mov rax, qword [rbp + 0x440]
mov rcx, rax
call sub.msvcrt.dll_free
jmp 0x49301a
nop
jmp 0x49301a
nop
jmp 0x49301a
nop
jmp 0x49301a
nop
cmp qword [rbp + 0x418], 0
je 0x493050
mov rax, qword [rbp + 0x418]
mov rcx, rax
call sub.msvcrt.dll_free
jmp 0x493051
nop
jmp 0x493051
nop
jmp 0x493051
nop
jmp 0x493051
nop
jmp 0x493051
nop
jmp 0x493051
nop
jmp 0x493051
nop
jmp 0x493051
nop
jmp 0x493051
nop
jmp 0x493051
nop
mov eax, 0
add rsp, 0x4f0
pop rbp
ret