Function at 0x43d291
Capabilities:
Write file on windows

Disassembly:
push rbp
sub rsp, 0x120
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xb0], rcx
mov qword [rbp + 0xb8], rdx
mov rax, qword [rbp + 0xb8]
mov qword [rbp + 0x48], rax
mov qword [rbp - 8], 0
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x58]
mov qword [rbp + 0x98], rax
cmp qword [rbp + 0x98], 0
je 0x43d5b5
mov rax, qword [rbp + 0x48]
mov r9, rax
mov r8d, 0x11
mov edx, 1
lea rcx, str._nProgram_Header:_n
call sub.msvcrt.dll_fwrite
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0x3c]
mov dword [rbp + 0x44], eax
mov dword [rbp + 0x94], 0
jmp 0x43d5a6
mov rax, qword [rbp + 0x98]
mov eax, dword [rax]
mov ecx, eax
call fcn.0043d16d
mov qword [rbp + 0x88], rax
cmp qword [rbp + 0x88], 0
jne 0x43d375
mov rax, qword [rbp + 0x98]
mov edx, dword [rax]
lea rax, [rbp - 0x20]
mov r8d, edx
lea rdx, str.0x_lx
mov rcx, rax
call sub.msvcrt.dll_sprintf
lea rax, [rbp - 0x20]
mov qword [rbp + 0x88], rax
mov rdx, qword [rbp + 0x88]
mov rax, qword [rbp + 0x48]
mov r8, rdx
lea rdx, str._8s_off____0x
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov rax, qword [rbp + 0x98]
mov rdx, qword [rax + 8]
mov rax, qword [rbp + 0x48]
mov r8, rdx
mov rdx, rax
mov rcx, qword [rbp + 0xb0]
call fcn.0040d32a
mov rax, qword [rbp + 0x48]
mov r9, rax
mov r8d, 9
mov edx, 1
lea rcx, str._vaddr_0x
call sub.msvcrt.dll_fwrite
mov rax, qword [rbp + 0x98]
mov rdx, qword [rax + 0x10]
mov rax, qword [rbp + 0x48]
mov r8, rdx
mov rdx, rax
mov rcx, qword [rbp + 0xb0]
call fcn.0040d32a
mov rax, qword [rbp + 0x48]
mov r9, rax
mov r8d, 9
mov edx, 1
lea rcx, str._paddr_0x
call sub.msvcrt.dll_fwrite
mov rax, qword [rbp + 0x98]
mov rdx, qword [rax + 0x18]
mov rax, qword [rbp + 0x48]
mov r8, rdx
mov rdx, rax
mov rcx, qword [rbp + 0xb0]
call fcn.0040d32a
mov rax, qword [rbp + 0x98]
mov rax, qword [rax + 0x30]
mov rcx, rax
call fcn.00413135
mov edx, eax
mov rax, qword [rbp + 0x48]
mov r8d, edx
lea rdx, str._align_2_u_n
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov rax, qword [rbp + 0x48]
mov r9, rax
mov r8d, 0x12
mov edx, 1
lea rcx, str._________filesz_0x
call sub.msvcrt.dll_fwrite
mov rax, qword [rbp + 0x98]
mov rdx, qword [rax + 0x20]
mov rax, qword [rbp + 0x48]
mov r8, rdx
mov rdx, rax
mov rcx, qword [rbp + 0xb0]
call fcn.0040d32a
mov rax, qword [rbp + 0x48]
mov r9, rax
mov r8d, 9
mov edx, 1
lea rcx, str._memsz_0x
call sub.msvcrt.dll_fwrite
mov rax, qword [rbp + 0x98]
mov rdx, qword [rax + 0x28]
mov rax, qword [rbp + 0x48]
mov r8, rdx
mov rdx, rax
mov rcx, qword [rbp + 0xb0]
call fcn.0040d32a
mov rax, qword [rbp + 0x98]
mov eax, dword [rax + 4]
and eax, 1
test eax, eax
je 0x43d4f2
mov edx, 0x78
jmp 0x43d4f7
mov edx, 0x2d
mov rax, qword [rbp + 0x98]
mov eax, dword [rax + 4]
and eax, 2
test eax, eax
je 0x43d510
mov r8d, 0x77
jmp 0x43d516
mov r8d, 0x2d
mov rax, qword [rbp + 0x98]
mov eax, dword [rax + 4]
and eax, 4
test eax, eax
je 0x43d52e
mov ecx, 0x72
jmp 0x43d533
mov ecx, 0x2d
mov rax, qword [rbp + 0x48]
mov dword [rsp + 0x20], edx
mov r9d, r8d
mov r8d, ecx
lea rdx, str._flags__c_c_c
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov rax, qword [rbp + 0x98]
mov eax, dword [rax + 4]
and eax, 0xfffffff8
test eax, eax
je 0x43d586
mov rax, qword [rbp + 0x98]
mov eax, dword [rax + 4]
and eax, 0xfffffff8
mov edx, eax
mov rax, qword [rbp + 0x48]
mov r8d, edx
lea rdx, str.__lx
mov rcx, rax
call sub.msvcrt.dll_fprintf
mov rax, qword [rbp + 0x48]
mov rdx, rax
mov ecx, 0xa
call sub.msvcrt.dll_fputc
add dword [rbp + 0x94], 1
add qword [rbp + 0x98], 0x38
mov eax, dword [rbp + 0x94]
cmp eax, dword [rbp + 0x44]
jb 0x43d32a
lea rdx, [0x004f4b32]
mov rcx, qword [rbp + 0xb0]
call fcn.00415b32
mov qword [rbp + 0x38], rax
cmp qword [rbp + 0x38], 0
je 0x43df23
mov rax, qword [rbp + 0x48]
mov r9, rax
mov r8d, 0x12
mov edx, 1
lea rcx, str._nDynamic_Section:_n
call sub.msvcrt.dll_fwrite
lea rdx, [rbp - 8]
mov rax, qword [rbp + 0x38]
mov r8, rdx
mov rdx, rax
mov rcx, qword [rbp + 0xb0]
call fcn.004166da
test eax, eax
je 0x43e222
mov rax, qword [rbp + 0x38]
mov rdx, rax
mov rcx, qword [rbp + 0xb0]
call fcn.00448dbc
mov dword [rbp + 0x34], eax
cmp dword [rbp + 0x34], 0xfffffeff
je 0x43e225
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x50]
mov edx, dword [rbp + 0x34]
shl rdx, 3
add rax, rdx
mov rax, qword [rax]
mov eax, dword [rax + 0x28]
mov dword [rbp + 0x30], eax
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 8]
mov rax, qword [rax + 0x368]
mov rax, qword [rax + 0x300]
movzx eax, byte [rax + 6]
movzx eax, al
mov qword [rbp + 0x28], rax
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 8]
mov rax, qword [rax + 0x368]
mov rax, qword [rax + 0x300]
mov rax, qword [rax + 0x50]
mov qword [rbp + 0x20], rax
mov rax, qword [rbp - 8]
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x38]
mov rax, qword [rax + 0x38]
cmp qword [rbp + 0x28], rax
ja 0x43e228
mov rax, qword [rbp + 0x38]
mov rdx, qword [rax + 0x38]
mov rax, qword [rbp + 0x80]
add rax, rdx
mov qword [rbp + 0x18], rax
jmp 0x43deee
lea rax, [0x004f4529]
mov qword [rbp + 0x78], rax
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 8]
mov rax, qword [rax + 0x368]
mov qword [rbp + 0x10], rax
lea rcx, [rbp - 0x30]
mov rdx, qword [rbp + 0x80]
mov rax, qword [rbp + 0x20]
mov r8, rcx
mov rcx, qword [rbp + 0xb0]
call rax
mov rax, qword [rbp - 0x30]
test rax, rax
je 0x43df0e
mov dword [rbp + 0x74], 0
mov rax, qword [rbp - 0x30]
cmp rax, 0x1d
je 0x43dc4b
cmp rax, 0x1d
ja 0x43d880
cmp rax, 0xe
je 0x43db4d
cmp rax, 0xe
ja 0x43d7ec
cmp rax, 7
je 0x43dadd
cmp rax, 7
ja 0x43d7aa
cmp rax, 3
je 0x43da9d
cmp rax, 3
ja 0x43d791
cmp rax, 1
je 0x43da76
cmp rax, 2
je 0x43da8d
jmp 0x43da15
cmp rax, 5
je 0x43dabd
cmp rax, 5
ja 0x43dacd
jmp 0x43daad
cmp rax, 0xa
je 0x43db0d
cmp rax, 0xa
ja 0x43d7d3
cmp rax, 8
je 0x43daed
cmp rax, 9
je 0x43dafd
jmp 0x43da15
cmp rax, 0xc
je 0x43db2d
cmp rax, 0xc
ja 0x43db3d
jmp 0x43db1d
cmp rax, 0x15
je 0x43dbcb
cmp rax, 0x15
ja 0x43d83e
cmp rax, 0x11
je 0x43db8b
cmp rax, 0x11
ja 0x43d825
cmp rax, 0xf
je 0x43db64
cmp rax, 0x10
je 0x43db7b
jmp 0x43da15
cmp rax, 0x13
je 0x43dbab
cmp rax, 0x13
ja 0x43dbbb
jmp 0x43db9b
cmp rax, 0x19
je 0x43dc0b
cmp rax, 0x19
ja 0x43d867
cmp rax, 0x17
je 0x43dbeb
cmp rax, 0x17
ja 0x43dbfb
jmp 0x43dbdb
cmp rax, 0x1b
je 0x43dc2b
cmp rax, 0x1b
ja 0x43dc3b
jmp 0x43dc1b
cmp rax, 0x6ffffefc
je 0x43dd40
cmp rax, 0x6ffffefc
ja 0x43d958
cmp rax, 0x6ffffdfb
je 0x43dcc2
cmp rax, 0x6ffffdfb
ja 0x43d8fe
cmp rax, 0x21
je 0x43dc82
cmp rax, 0x21
ja 0x43d8d5
cmp rax, 0x1e
je 0x43dc62
cmp rax, 0x20
je 0x43dc72
jmp 0x43da15
cmp rax, 0x6ffffdf9
je 0x43dca2
cmp rax, 0x6ffffdf9
ja 0x43dcb2
cmp rax, 0x6ffffdf8
je 0x43dc92
jmp 0x43da15
cmp rax, 0x6ffffdff
je 0x43dd02
cmp rax, 0x6ffffdff
ja 0x43d92f
cmp rax, 0x6ffffdfd
je 0x43dce2
cmp rax, 0x6ffffdfd
ja 0x43dcf2
jmp 0x43dcd2
cmp rax, 0x6ffffefa
je 0x43dd12
cmp rax, 0x6ffffefa
ja 0x43dd29
cmp rax, 0x6ffffef5
je 0x43de2d
jmp 0x43da15
cmp rax, 0x6ffffffb
je 0x43dda7
cmp rax, 0x6ffffffb
ja 0x43d9c0
cmp rax, 0x6ffffeff
je 0x43dd77
cmp rax, 0x6ffffeff
ja 0x43d99a
cmp rax, 0x6ffffefd
je 0x43dd57
cmp rax, 0x6ffffefe
je 0x43dd67
jmp 0x43da15
cmp rax, 0x6ffffff9
je 0x43dd87
cmp rax, 0x6ffffff9
ja 0x43dd97
cmp rax, 0x6ffffff0
je 0x43ddb7
jmp 0x43da15
cmp rax, 0x6fffffff
je 0x43ddeb
cmp rax, 0x6fffffff
ja 0x43d9f1
cmp rax, 0x6ffffffd
je 0x43ddd1
cmp rax, 0x6ffffffd
ja 0x43ddde
jmp 0x43ddc4
cmp rax, 0x7ffffffe
je 0x43de0c
cmp rax, 0x7fffffff
je 0x43de19
cmp rax, 0x7ffffffd
je 0x43ddf8
mov rax, qword [rbp + 0x10]
mov rax, qword [rax + 0x1d0]
test rax, rax
je 0x43da3d
mov rax, qword [rbp + 0x10]
mov rax, qword [rax + 0x1d0]
mov rdx, qword [rbp - 0x30]
mov rcx, rdx
call rax
mov qword [rbp + 0x78], rax
mov rax, qword [rbp + 0x78]
movzx eax, byte [rax]
movzx eax, al
test eax, eax
jne 0x43de3a
mov rdx, qword [rbp - 0x30]
lea rax, [rbp - 0x50]
mov r8, rdx
lea rdx, str._I64x
mov rcx, rax
call sub.msvcrt.dll_sprintf
lea rax, [rbp - 0x50]
mov qword [rbp + 0x78], rax
jmp 0x43de3a
lea rax, str.NEEDED
mov qword [rbp + 0x78], rax
mov dword [rbp + 0x74], 1
jmp 0x43de3b
lea rax, str.PLTRELSZ
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.PLTGOT
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.HASH
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.STRTAB
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.SYMTAB
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.RELA
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.RELASZ
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.RELAENT
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.STRSZ
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.SYMENT
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.INIT
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.FINI
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.SONAME
mov qword [rbp + 0x78], rax
mov dword [rbp + 0x74], 1
jmp 0x43de3b
lea rax, str.RPATH
mov qword [rbp + 0x78], rax
mov dword [rbp + 0x74], 1
jmp 0x43de3b
lea rax, str.SYMBOLIC
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, [0x004f4bc0]
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.RELSZ
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.RELENT
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.PLTREL
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.DEBUG
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.TEXTREL
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.JMPREL
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.BIND_NOW
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.INIT_ARRAY
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.FINI_ARRAY
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.INIT_ARRAYSZ
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.FINI_ARRAYSZ
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.RUNPATH
mov qword [rbp + 0x78], rax
mov dword [rbp + 0x74], 1
jmp 0x43de3b
lea rax, str.FLAGS
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.PREINIT_ARRAY
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.PREINIT_ARRAYSZ
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.CHECKSUM
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.PLTPADSZ
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.MOVEENT
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.MOVESZ
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.FEATURE
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.POSFLAG_1
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.SYMINSZ
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.SYMINENT
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.CONFIG
mov qword [rbp + 0x78], rax
mov dword [rbp + 0x74], 1
jmp 0x43de3b
lea rax, str.DEPAUDIT
mov qword [rbp + 0x78], rax
mov dword [rbp + 0x74], 1
jmp 0x43de3b
lea rax, str.AUDIT
mov qword [rbp + 0x78], rax
mov dword [rbp + 0x74], 1
jmp 0x43de3b
lea rax, str.PLTPAD
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.MOVETAB
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.SYMINFO
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.RELACOUNT
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.RELCOUNT
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.FLAGS_1
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.VERSYM
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.VERDEF
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.VERDEFNUM
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.VERNEED
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.VERNEEDNUM
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.AUXILIARY
mov qword [rbp + 0x78], rax
mov dword [rbp + 0x74], 1
jmp 0x43de3b
lea rax, str.USED
mov qword [rbp + 0x78], rax
jmp 0x43de3b
lea rax, str.FILTER
mov qword [rbp + 0x78], rax
mov dword [rbp + 0x74], 1
jmp 0x43de3b
lea rax, str.GNU_HASH
mov qword [rbp + 0x78], rax
jmp 0x43de3b
nop
mov rdx, qword [rbp + 0x78]
mov rax, qword [rbp + 0x48]
mov r8, rdx
lea rdx, str.____20s
mov rcx, rax
call sub.msvcrt.dll_fprintf
cmp dword [rbp + 0x74], 0
jne 0x43de95
mov rax, qword [rbp + 0x48]
mov r9, rax
mov r8d, 2
mov edx, 1
lea rcx, [0x004f4d31]
call sub.msvcrt.dll_fwrite
mov rdx, qword [rbp - 0x28]
mov rax, qword [rbp + 0x48]
mov r8, rdx
mov rdx, rax
mov rcx, qword [rbp + 0xb0]
call fcn.0040d32a
jmp 0x43ded2
mov rax, qword [rbp - 0x28]
mov dword [rbp + 0xc], eax
mov edx, dword [rbp + 0xc]
mov eax, dword [rbp + 0x30]
mov r8d, edx
mov edx, eax
mov rcx, qword [rbp + 0xb0]
call fcn.0043a8db
mov qword [rbp], rax
cmp qword [rbp], 0
je 0x43e22b
mov rdx, qword [rbp + 0x48]
mov rax, qword [rbp]
mov rcx, rax
call sub.msvcrt.dll_fputs
mov rax, qword [rbp + 0x48]
mov rdx, rax
mov ecx, 0xa
call sub.msvcrt.dll_fputc
mov rax, qword [rbp + 0x28]
add qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x28]
neg rax
mov rdx, rax
mov rax, qword [rbp + 0x18]
add rax, rdx
cmp qword [rbp + 0x80], rax
jbe 0x43d6dc
jmp 0x43df0f
nop
mov rax, qword [rbp - 8]
mov rcx, rax
call sub.msvcrt.dll_free
mov qword [rbp - 8], 0
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0xc7c]
test eax, eax
je 0x43df55
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x340]
test rax, rax
je 0x43df87
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0xc80]
test eax, eax
je 0x43dfa6
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x348]
test rax, rax
jne 0x43dfa6
mov edx, 0
mov rcx, qword [rbp + 0xb0]
call fcn.0044d557
test eax, eax
jne 0x43dfa6
mov eax, 0
jmp 0x43e246
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0xc7c]
test eax, eax
je 0x43e105
mov rax, qword [rbp + 0x48]
mov r9, rax
mov r8d, 0x16
mov edx, 1
lea rcx, str._nVersion_definitions:_n
call sub.msvcrt.dll_fwrite
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x340]
mov qword [rbp + 0x68], rax
jmp 0x43e0fa
mov rax, qword [rbp + 0x68]
mov rax, qword [rax + 0x20]
test rax, rax
je 0x43e015
mov rax, qword [rbp + 0x68]
mov rax, qword [rax + 0x20]
jmp 0x43e01c
lea rax, str._corrupt_
mov rdx, qword [rbp + 0x68]
mov edx, dword [rdx + 8]
mov rcx, qword [rbp + 0x68]
movzx ecx, word [rcx + 2]
movzx r9d, cx
mov rcx, qword [rbp + 0x68]
movzx ecx, word [rcx + 4]
movzx r8d, cx
mov rcx, qword [rbp + 0x48]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], edx
lea rdx, str._d_0x_2.2x_0x_8.8lx__s_n
call sub.msvcrt.dll_fprintf
mov rax, qword [rbp + 0x68]
mov rax, qword [rax + 0x30]
test rax, rax
je 0x43e0ee
mov rax, qword [rbp + 0x68]
mov rax, qword [rax + 0x30]
mov rax, qword [rax + 0x10]
test rax, rax
je 0x43e0ee
mov rax, qword [rbp + 0x48]
mov rdx, rax
mov ecx, 9
call sub.msvcrt.dll_fputc
mov rax, qword [rbp + 0x68]
mov rax, qword [rax + 0x30]
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x60], rax
jmp 0x43e0d6
mov rax, qword [rbp + 0x60]
mov rax, qword [rax + 8]
test rax, rax
je 0x43e0b0
mov rax, qword [rbp + 0x60]
mov rax, qword [rax + 8]
jmp 0x43e0b7
lea rax, str._corrupt_
mov rcx, qword [rbp + 0x48]
mov r8, rax
lea rdx, [0x004f4d6d]
call sub.msvcrt.dll_fprintf
mov rax, qword [rbp + 0x60]
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x60], rax
cmp qword [rbp + 0x60], 0
jne 0x43e099
mov rax, qword [rbp + 0x48]
mov rdx, rax
mov ecx, 0xa
call sub.msvcrt.dll_fputc
mov rax, qword [rbp + 0x68]
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x68], rax
cmp qword [rbp + 0x68], 0
jne 0x43dffe
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 0xf0]
mov eax, dword [rax + 0xc80]
test eax, eax
je 0x43e21b
mov rax, qword [rbp + 0x48]
mov r9, rax
mov r8d, 0x15
mov edx, 1
lea rcx, str._nVersion_References:_n
call sub.msvcrt.dll_fwrite
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 0xf0]
mov rax, qword [rax + 0x348]
mov qword [rbp + 0x58], rax
jmp 0x43e210
mov rax, qword [rbp + 0x58]
mov rax, qword [rax + 0x18]
test rax, rax
je 0x43e174
mov rax, qword [rbp + 0x58]
mov rax, qword [rax + 0x18]
jmp 0x43e17b
lea rax, str._corrupt_
mov rcx, qword [rbp + 0x48]
mov r8, rax
lea rdx, str.__required_from__s:_n
call sub.msvcrt.dll_fprintf
mov rax, qword [rbp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rbp + 0x50], rax
jmp 0x43e1fd
mov rax, qword [rbp + 0x50]
mov rax, qword [rax + 0x10]
test rax, rax
je 0x43e1b3
mov rax, qword [rbp + 0x50]
mov rax, qword [rax + 0x10]
jmp 0x43e1ba
lea rax, str._corrupt_
mov rdx, qword [rbp + 0x50]
movzx edx, word [rdx + 6]
movzx edx, dx
mov rcx, qword [rbp + 0x50]
movzx ecx, word [rcx + 4]
movzx r9d, cx
mov rcx, qword [rbp + 0x50]
mov r8d, dword [rcx]
mov rcx, qword [rbp + 0x48]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], edx
lea rdx, str.____0x_8.8lx_0x_2.2x__2.2d__s_n
call sub.msvcrt.dll_fprintf
mov rax, qword [rbp + 0x50]
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x50], rax
cmp qword [rbp + 0x50], 0
jne 0x43e19c
mov rax, qword [rbp + 0x58]
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x58], rax
cmp qword [rbp + 0x58], 0
jne 0x43e15d
mov eax, 1
jmp 0x43e246
nop
jmp 0x43e22c
nop
jmp 0x43e22c
nop
jmp 0x43e22c
nop
mov rax, qword [rbp - 8]
test rax, rax
je 0x43e241
mov rax, qword [rbp - 8]
mov rcx, rax
call sub.msvcrt.dll_free
mov eax, 0
add rsp, 0x120
pop rbp
ret