Function at 0x536520
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, ecx
lea eax, [ecx + 0x258]
push edi
mov ecx, eax
push esi
push ebx
lea ebx, [ebp + 0x260]
sub esp, 0x5c
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x613558
mov edx, dword [ebp + 0x25c]
mov dword [esp], 0
mov dword [esp + 4], edx
mov dword [esp + 0x18], eax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_replace_unsigned_int__unsigned_int__char_const__unsigned_int_
mov ecx, dword [ebp + 0x1c]
mov esi, dword [ebp + 0x25c]
sub esp, 0x10
movzx eax, byte [ecx]
lea edi, [esi + 1]
mov byte [esp + 0x1c], al
mov eax, dword [ebp + 0x258]
cmp ebx, eax
je 0x537848
mov edx, dword [ebp + 0x260]
cmp edx, edi
jb 0x537360
movzx ecx, byte [esp + 0x1c]
mov byte [eax + esi], cl
mov dword [ebp + 0x25c], edi
mov edi, dword [ebp + 0x258]
mov byte [edi + esi + 1], 0
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x258]
movzx edx, byte [esi + 1]
mov esi, dword [ebp + 0x25c]
mov byte [esp + 0x1c], dl
lea edi, [esi + 1]
cmp ebx, eax
je 0x537878
mov ecx, dword [ebp + 0x260]
cmp ecx, edi
jb 0x5373d0
movzx edx, byte [esp + 0x1c]
mov byte [eax + esi], dl
mov dword [ebp + 0x25c], edi
mov edi, dword [ebp + 0x258]
mov byte [edi + esi + 1], 0
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x258]
movzx ecx, byte [esi + 2]
mov esi, dword [ebp + 0x25c]
mov byte [esp + 0x1c], cl
lea edi, [esi + 1]
cmp ebx, eax
je 0x537858
mov edx, dword [ebp + 0x260]
cmp edx, edi
jb 0x537398
movzx ecx, byte [esp + 0x1c]
mov byte [eax + esi], cl
mov dword [ebp + 0x25c], edi
mov edi, dword [ebp + 0x258]
mov byte [edi + esi + 1], 0
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x258]
movzx edx, byte [esi + 3]
mov esi, dword [ebp + 0x25c]
mov byte [esp + 0x1c], dl
lea edi, [esi + 1]
cmp ebx, eax
je 0x537868
mov ecx, dword [ebp + 0x260]
cmp ecx, edi
jb 0x537600
movzx edx, byte [esp + 0x1c]
mov byte [eax + esi], dl
mov dword [ebp + 0x25c], edi
mov edi, dword [ebp + 0x258]
mov byte [edi + esi + 1], 0
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x258]
movzx ecx, byte [esi + 4]
mov esi, dword [ebp + 0x25c]
mov byte [esp + 0x1c], cl
lea edi, [esi + 1]
cmp ebx, eax
je 0x5378c8
mov edx, dword [ebp + 0x260]
cmp edx, edi
jb 0x5375c8
movzx ecx, byte [esp + 0x1c]
mov byte [eax + esi], cl
mov dword [ebp + 0x25c], edi
mov edi, dword [ebp + 0x258]
mov byte [edi + esi + 1], 0
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x258]
movzx edx, byte [esi + 5]
mov esi, dword [ebp + 0x25c]
mov byte [esp + 0x1c], dl
lea edi, [esi + 1]
cmp ebx, eax
je 0x5378d8
mov ecx, dword [ebp + 0x260]
cmp ecx, edi
jb 0x537590
movzx edx, byte [esp + 0x1c]
mov byte [eax + esi], dl
mov dword [ebp + 0x25c], edi
mov edi, dword [ebp + 0x258]
mov byte [edi + esi + 1], 0
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x258]
movzx ecx, byte [esi + 6]
mov esi, dword [ebp + 0x25c]
mov byte [esp + 0x1c], cl
lea edi, [esi + 1]
cmp ebx, eax
je 0x537828
mov edx, dword [ebp + 0x260]
cmp edx, edi
jb 0x537558
movzx ecx, byte [esp + 0x1c]
mov byte [eax + esi], cl
mov dword [ebp + 0x25c], edi
mov edi, dword [ebp + 0x258]
mov byte [edi + esi + 1], 0
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x258]
movzx edx, byte [esi + 7]
mov esi, dword [ebp + 0x25c]
mov byte [esp + 0x1c], dl
lea edi, [esi + 1]
cmp ebx, eax
je 0x537838
mov ecx, dword [ebp + 0x260]
cmp ecx, edi
jb 0x5377c0
movzx edx, byte [esp + 0x1c]
mov byte [eax + esi], dl
mov dword [ebp + 0x25c], edi
mov edi, dword [ebp + 0x258]
mov byte [edi + esi + 1], 0
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x258]
movzx ecx, byte [esi + 8]
mov esi, dword [ebp + 0x25c]
mov byte [esp + 0x1c], cl
lea edi, [esi + 1]
cmp ebx, eax
je 0x537908
mov edx, dword [ebp + 0x260]
cmp edx, edi
jb 0x537788
movzx ecx, byte [esp + 0x1c]
mov byte [eax + esi], cl
mov dword [ebp + 0x25c], edi
mov edi, dword [ebp + 0x258]
mov byte [edi + esi + 1], 0
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x258]
movzx edx, byte [esi + 9]
mov esi, dword [ebp + 0x25c]
mov byte [esp + 0x1c], dl
lea edi, [esi + 1]
cmp ebx, eax
je 0x5377f8
mov ecx, dword [ebp + 0x260]
cmp ecx, edi
jb 0x537750
movzx edx, byte [esp + 0x1c]
mov byte [eax + esi], dl
mov dword [ebp + 0x25c], edi
mov edi, dword [ebp + 0x258]
mov byte [edi + esi + 1], 0
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x258]
movzx ecx, byte [esi + 0xa]
mov esi, dword [ebp + 0x25c]
mov byte [esp + 0x1c], cl
lea edi, [esi + 1]
cmp ebx, eax
je 0x5378a8
mov edx, dword [ebp + 0x260]
cmp edx, edi
jb 0x537718
movzx ecx, byte [esp + 0x1c]
mov byte [eax + esi], cl
mov dword [ebp + 0x25c], edi
mov edi, dword [ebp + 0x258]
mov byte [edi + esi + 1], 0
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x258]
movzx edx, byte [esi + 0xb]
mov esi, dword [ebp + 0x25c]
mov byte [esp + 0x1c], dl
lea edi, [esi + 1]
cmp eax, ebx
je 0x5378b8
mov ebx, dword [ebp + 0x260]
cmp ebx, edi
jb 0x5376e0
movzx ecx, byte [esp + 0x1c]
lea ebx, [ebp + 0x278]
mov byte [eax + esi], cl
mov edx, dword [ebp + 0x258]
lea ecx, [ebp + 0x270]
mov dword [ebp + 0x25c], edi
mov byte [edx + esi + 1], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x613558
mov esi, dword [ebp + 0x274]
mov dword [esp], 0
mov dword [esp + 4], esi
mov dword [esp + 0x18], ecx
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_replace_unsigned_int__unsigned_int__char_const__unsigned_int_
mov edi, dword [ebp + 0x1c]
mov esi, dword [ebp + 0x274]
sub esp, 0x10
movzx eax, byte [edi + 0xc]
lea edi, [esi + 1]
mov byte [esp + 0x1c], al
mov eax, dword [ebp + 0x270]
cmp ebx, eax
je 0x537888
mov edx, dword [ebp + 0x278]
cmp edx, edi
jb 0x5376a8
movzx ecx, byte [esp + 0x1c]
mov byte [eax + esi], cl
mov dword [ebp + 0x274], edi
mov edi, dword [ebp + 0x270]
mov byte [edi + esi + 1], 0
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x270]
movzx edx, byte [esi + 0xd]
mov esi, dword [ebp + 0x274]
mov byte [esp + 0x1c], dl
lea edi, [esi + 1]
cmp ebx, eax
je 0x537898
mov ecx, dword [ebp + 0x278]
cmp ecx, edi
jb 0x537670
movzx edx, byte [esp + 0x1c]
mov byte [eax + esi], dl
mov dword [ebp + 0x274], edi
mov edi, dword [ebp + 0x270]
mov byte [edi + esi + 1], 0
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x270]
movzx ecx, byte [esi + 0xe]
mov esi, dword [ebp + 0x274]
mov byte [esp + 0x1c], cl
lea edi, [esi + 1]
cmp ebx, eax
je 0x5378e8
mov edx, dword [ebp + 0x278]
cmp edx, edi
jb 0x537638
movzx ecx, byte [esp + 0x1c]
mov byte [eax + esi], cl
mov dword [ebp + 0x274], edi
mov edi, dword [ebp + 0x270]
mov byte [edi + esi + 1], 0
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x270]
movzx edx, byte [esi + 0xf]
mov esi, dword [ebp + 0x274]
mov byte [esp + 0x1c], dl
lea edi, [esi + 1]
cmp eax, ebx
je 0x5378f8
mov ebx, dword [ebp + 0x278]
cmp ebx, edi
jb 0x537520
movzx ecx, byte [esp + 0x1c]
mov byte [eax + esi], cl
mov edx, dword [ebp + 0x270]
mov dword [ebp + 0x274], edi
lea edi, [ebp + 0x288]
mov byte [edx + esi + 1], 0
mov ecx, edi
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x613558
mov esi, dword [ebp + 0x28c]
mov dword [esp], 0
mov dword [esp + 4], esi
lea esi, [ebp + 0x290]
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_replace_unsigned_int__unsigned_int__char_const__unsigned_int_
mov ebx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x288]
sub esp, 0x10
movzx eax, byte [ebx + 0x10]
mov ebx, dword [ebp + 0x28c]
mov byte [esp + 0x18], al
lea eax, [ebx + 1]
cmp esi, edx
je 0x537808
mov ecx, dword [ebp + 0x290]
cmp ecx, eax
jb 0x5374e0
movzx ecx, byte [esp + 0x18]
mov byte [edx + ebx], cl
mov edx, dword [ebp + 0x288]
mov dword [ebp + 0x28c], eax
mov byte [edx + ebx + 1], 0
mov ebx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x288]
movzx eax, byte [ebx + 0x11]
mov ebx, dword [ebp + 0x28c]
mov byte [esp + 0x18], al
lea eax, [ebx + 1]
cmp edx, esi
je 0x537818
mov esi, dword [ebp + 0x290]
cmp esi, eax
jb 0x5374a8
movzx ecx, byte [esp + 0x18]
mov byte [edx + ebx], cl
mov edi, dword [ebp + 0x288]
mov dword [ebp + 0x28c], eax
mov byte [edi + ebx + 1], 0
lea ebx, [esp + 0x28]
mov dword [esp + 8], 0x12
mov dword [esp + 4], 0x613559
mov dword [esp], sym.imp.libstdc_6.dll_std::cout
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov esi, dword [ebp + 0x25c]
mov dword [esp + 0x20], ebx
mov edx, dword [ebp + 0x258]
mov dword [esp + 0x38], esi
cmp esi, 0xf
ja 0x537458
cmp esi, 1
jne 0x537280
movzx eax, byte [edx]
mov byte [esp + 0x28], al
mov edx, ebx
lea edi, [esp + 0x38]
lea eax, [esp + 0x20]
mov dword [esp + 0x24], esi
mov byte [edx + esi], 0
mov dword [esp + 4], eax
mov dword [esp], edi
call method.util.make_ascii_printable_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____
mov ecx, dword [esp + 0x3c]
mov esi, dword [esp + 0x38]
mov dword [esp], sym.imp.libstdc_6.dll_std::cout
mov dword [esp + 8], ecx
mov dword [esp + 4], esi
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov dword [esp + 8], 1
mov dword [esp + 4], 0x610bc6
mov dword [esp], eax
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov eax, dword [esp + 0x38]
lea esi, [esp + 0x40]
cmp eax, esi
je 0x536bb3
mov edx, dword [esp + 0x40]
mov dword [esp], eax
lea ecx, [edx + 1]
mov dword [esp + 4], ecx
call sym.operator_delete_void__unsigned_int_
mov eax, dword [esp + 0x20]
cmp eax, ebx
je 0x536bce
mov edx, dword [esp + 0x28]
mov dword [esp], eax
lea ecx, [edx + 1]
mov dword [esp + 4], ecx
call sym.operator_delete_void__unsigned_int_
mov dword [esp + 8], 0x11
mov dword [esp + 4], 0x61356c
mov dword [esp], sym.imp.libstdc_6.dll_std::cout
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov eax, dword [ebp + 0x270]
mov edx, dword [ebp + 0x274]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x18], eax
mov dword [esp + 0x38], edx
cmp edx, 0xf
ja 0x537408
cmp edx, 1
jne 0x5372f0
movzx ecx, byte [eax]
mov byte [esp + 0x28], cl
mov eax, ebx
lea ecx, [esp + 0x20]
mov dword [esp + 0x24], edx
mov byte [eax + edx], 0
mov dword [esp + 4], ecx
mov dword [esp], edi
call method.util.make_ascii_printable_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x38]
mov dword [esp], sym.imp.libstdc_6.dll_std::cout
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov dword [esp + 8], 1
mov dword [esp + 4], 0x610bc6
mov dword [esp], eax
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov eax, dword [esp + 0x38]
cmp eax, esi
je 0x536c84
mov ecx, dword [esp + 0x40]
mov dword [esp], eax
lea edx, [ecx + 1]
mov dword [esp + 4], edx
call sym.operator_delete_void__unsigned_int_
mov eax, dword [esp + 0x20]
cmp eax, ebx
je 0x536c9f
mov ecx, dword [esp + 0x28]
mov dword [esp], eax
lea edx, [ecx + 1]
mov dword [esp + 4], edx
call sym.operator_delete_void__unsigned_int_
mov dword [esp + 8], 0x12
mov dword [esp + 4], str.MMU::Maker_Code__
mov dword [esp], sym.imp.libstdc_6.dll_std::cout
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov eax, dword [ebp + 0x288]
mov edx, dword [ebp + 0x28c]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x18], eax
mov dword [esp + 0x38], edx
cmp edx, 0xf
ja 0x537310
cmp edx, 1
jne 0x537300
movzx ecx, byte [eax]
mov byte [esp + 0x28], cl
mov eax, ebx
lea ecx, [esp + 0x20]
mov dword [esp + 0x24], edx
mov byte [eax + edx], 0
mov dword [esp + 4], ecx
mov dword [esp], edi
call method.util.make_ascii_printable_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____
mov edi, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
mov dword [esp], sym.imp.libstdc_6.dll_std::cout
mov dword [esp + 8], edi
mov dword [esp + 4], edx
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov dword [esp + 8], 1
mov dword [esp + 4], 0x610bc6
mov dword [esp], eax
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov eax, dword [esp + 0x38]
cmp eax, esi
je 0x536d55
mov esi, dword [esp + 0x40]
mov dword [esp], eax
lea ecx, [esi + 1]
mov dword [esp + 4], ecx
call sym.operator_delete_void__unsigned_int_
mov edi, dword [esp + 0x20]
cmp edi, ebx
je 0x536d70
mov ebx, dword [esp + 0x28]
mov dword [esp], edi
lea edx, [ebx + 1]
mov dword [esp + 4], edx
call sym.operator_delete_void__unsigned_int_
mov eax, dword [ebp + 0x20]
sub eax, dword [ebp + 0x1c]
mov dword [esp + 8], 0xf
mov dword [esp + 4], 0x613591
mov dword [esp], sym.imp.libstdc_6.dll_std::cout
cmp eax, 0xfffff
ja 0x537298
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov edx, dword [sym.imp.libstdc_6.dll_std::cout]
mov ecx, dword [ebp + 0x20]
sub ecx, dword [ebp + 0x1c]
mov esi, dword [edx - 0xc]
shr ecx, 0xa
mov dword [esp], ecx
mov ecx, sym.imp.libstdc_6.dll_std::cout
mov eax, dword [esi + sym.imp.libstdc_6.dll_VTT_for_std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___]
and eax, 0xffffffb5
or eax, 2
mov dword [esi + sym.imp.libstdc_6.dll_VTT_for_std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___], eax
call sym.std::ostream_std::ostream::_M_insert_unsigned_long__unsigned_long_
sub esp, 4
mov dword [esp + 8], 3
mov dword [esp + 4], 0x6135a1
mov dword [esp], eax
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov dword [esp + 8], 0x10
mov dword [esp + 4], 0x6135a9
mov dword [esp], sym.imp.libstdc_6.dll_std::cout
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov edi, dword [sym.imp.libstdc_6.dll_std::cout]
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x20]
mov ebx, dword [edi - 0xc]
mov dword [esp], esi
sub eax, esi
mov edx, dword [ebx + sym.imp.libstdc_6.dll_VTT_for_std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___]
mov dword [esp + 4], eax
and edx, 0xffffffb5
or edx, 8
mov dword [ebx + sym.imp.libstdc_6.dll_VTT_for_std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___], edx
call method.util.get_crc32_unsigned_char__unsigned_int_
mov ecx, sym.imp.libstdc_6.dll_std::cout
mov dword [esp], eax
call sym.std::ostream_std::ostream::_M_insert_unsigned_long__unsigned_long_
sub esp, 4
mov dword [esp + 8], 1
mov dword [esp + 4], 0x610bc6
mov dword [esp], eax
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov edi, dword [ebp + 0x1c]
mov dword [ebp + 0x2a4], 0
movzx ebx, byte [edi + 0x23]
shl ebx, 8
mov dword [ebp + 0x2a4], ebx
movzx ecx, byte [edi + 0x22]
or ecx, ebx
shl ecx, 8
mov dword [ebp + 0x2a4], ecx
movzx edx, byte [edi + 0x21]
or edx, ecx
shl edx, 8
mov dword [ebp + 0x2a4], edx
movzx esi, byte [edi + 0x20]
mov dword [ebp + 0x2a8], 0
or edx, esi
mov dword [ebp + 0x2a4], edx
movzx eax, byte [edi + 0x27]
shl eax, 8
mov dword [ebp + 0x2a8], eax
movzx ebx, byte [edi + 0x26]
or ebx, eax
shl ebx, 8
mov dword [ebp + 0x2a8], ebx
movzx edx, byte [edi + 0x25]
or edx, ebx
shl edx, 8
mov dword [ebp + 0x2a8], edx
movzx ecx, byte [edi + 0x24]
mov dword [ebp + 0x2ac], 0
or edx, ecx
mov dword [ebp + 0x2a8], edx
movzx esi, byte [edi + 0x2b]
shl esi, 8
mov dword [ebp + 0x2ac], esi
movzx eax, byte [edi + 0x2a]
or eax, esi
shl eax, 8
mov dword [ebp + 0x2ac], eax
movzx ebx, byte [edi + 0x29]
or ebx, eax
shl ebx, 8
mov dword [ebp + 0x2ac], ebx
movzx edx, byte [edi + 0x28]
mov dword [ebp + 0x2b0], 0
or ebx, edx
mov dword [ebp + 0x2ac], ebx
movzx esi, byte [edi + 0x2f]
mov ebx, 0x3bfe00
shl esi, 8
mov dword [ebp + 0x2b0], esi
movzx ecx, byte [edi + 0x2e]
or ecx, esi
mov esi, 0x3bfe00
shl ecx, 8
mov dword [ebp + 0x2b0], ecx
movzx eax, byte [edi + 0x2d]
or eax, ecx
cmp eax, ebx
cmova eax, ebx
shl eax, 8
mov dword [ebp + 0x2b0], eax
movzx edx, byte [edi + 0x2c]
mov dword [ebp + 0x2b4], 0
or eax, edx
cmp eax, esi
cmova eax, esi
mov dword [ebp + 0x2b0], eax
movzx eax, byte [edi + 0x33]
shl eax, 8
mov dword [ebp + 0x2b4], eax
movzx ecx, byte [edi + 0x32]
or ecx, eax
shl ecx, 8
mov dword [ebp + 0x2b4], ecx
movzx ebx, byte [edi + 0x31]
or ebx, ecx
mov ecx, 1
shl ebx, 8
mov dword [ebp + 0x2b4], ebx
movzx edx, byte [edi + 0x30]
mov dword [ebp + 0x2b8], 0
or ebx, edx
cmp dword [ebp + 0x2c0], 0x3bfe00
mov dword [ebp + 0x2b4], ebx
movzx eax, byte [edi + 0x37]
mov dword [ebp + 0x2b8], eax
jbe 0x536ffb
shl eax, 8
mov ecx, 2
mov dword [ebp + 0x2c0], 0x3bfe00
mov dword [ebp + 0x2b8], eax
movzx esi, byte [edi + 0x36]
or eax, esi
mov ebx, 0x37
shl eax, 8
mov edx, ebx
mov dword [ebp + 0x2b8], eax
sub edx, ecx
movzx esi, byte [edi + edx]
lea edx, [ecx + 1]
sub ebx, edx
or eax, esi
shl eax, 8
mov dword [ebp + 0x2b8], eax
movzx ebx, byte [edi + ebx]
or ebx, eax
cmp ecx, 1
jne 0x537912
shl ebx, 8
mov dword [ebp + 0x2b8], ebx
movzx eax, byte [edi + 0x34]
or eax, ebx
mov dword [ebp + 0x2b8], eax
mov dword [ebp + 0x2bc], 0
movzx esi, byte [edi + 0x3b]
shl esi, 8
mov dword [ebp + 0x2bc], esi
movzx ecx, byte [edi + 0x3a]
or ecx, esi
shl ecx, 8
mov dword [ebp + 0x2bc], ecx
movzx edx, byte [edi + 0x39]
or edx, ecx
shl edx, 8
mov dword [ebp + 0x2bc], edx
movzx ebx, byte [edi + 0x38]
mov dword [ebp + 0x2c0], 0
or edx, ebx
mov dword [ebp + 0x2bc], edx
movzx eax, byte [edi + 0x3f]
shl eax, 8
mov dword [ebp + 0x2c0], eax
movzx esi, byte [edi + 0x3e]
or esi, eax
shl esi, 8
mov dword [ebp + 0x2c0], esi
movzx edx, byte [edi + 0x3d]
or edx, esi
shl edx, 8
mov dword [ebp + 0x2c0], edx
movzx ecx, byte [edi + 0x3c]
or edx, ecx
mov dword [ebp + 0x2c0], edx
mov ebx, dword [edi + 0xc]
mov dword [ebp + 0x460], ebx
movzx ecx, byte [edi + 0x14]
mov edi, pe_nt_image_headers32
mov dword [esp], 0x27ffc03
shl edi, cl
mov ecx, ebp
test edi, edi
lea ebx, [edi + 0x3ff]
cmovns ebx, edi
sar ebx, 0xa
sub ebx, 1
shl ebx, 8
mov edi, ebx
shr ebx, 0x18
mov dword [esp + 4], ebx
or edi, 0xc2
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov eax, edi
mov ecx, ebp
shr eax, 0x10
sub esp, 8
movzx esi, al
mov dword [esp], 0x27ffc02
mov dword [esp + 4], esi
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov edx, edi
mov ecx, ebp
sub esp, 8
mov dword [esp + 0x18], edi
movzx edi, dh
mov dword [esp + 4], edi
mov dword [esp], 0x27ffc01
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov ecx, ebp
sub esp, 8
mov dword [esp + 4], 0xc2
mov dword [esp], 0x27ffc00
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov ecx, ebp
sub esp, 8
mov dword [esp + 4], ebx
mov dword [esp], 0x27ff803
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov ecx, ebp
sub esp, 8
mov dword [esp + 4], esi
mov dword [esp], 0x27ff802
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov ecx, ebp
sub esp, 8
mov dword [esp + 4], edi
mov dword [esp], 0x27ff801
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov ecx, ebp
sub esp, 8
mov dword [esp + 4], 0xc2
mov dword [esp], 0x27ff800
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov ecx, ebp
sub esp, 8
mov dword [esp + 4], ebx
mov dword [esp], 0x27ffc07
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov ecx, ebp
sub esp, 8
mov dword [esp + 4], esi
mov dword [esp], 0x27ffc06
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov ecx, ebp
sub esp, 8
mov dword [esp + 4], edi
mov dword [esp], 0x27ffc05
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov ecx, ebp
sub esp, 8
mov dword [esp + 4], 0xc2
mov dword [esp], 0x27ffc04
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov ecx, ebp
sub esp, 8
mov dword [esp + 4], ebx
mov dword [esp], 0x27ff807
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov ecx, ebp
sub esp, 8
mov dword [esp + 4], esi
mov dword [esp], 0x27ff806
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov ecx, ebp
sub esp, 8
mov dword [esp + 4], edi
mov dword [esp], 0x27ff805
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
mov ecx, ebp
sub esp, 8
mov dword [esp + 4], 0xc2
mov dword [esp], 0x27ff804
call method.NTR_MMU.write_u8_unsigned_int__unsigned_char_
sub esp, 8
mov ecx, dword [esp + 0x18]
mov dword [ebp + 0x128], ecx
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
ret
test esi, esi
je 0x536b42
mov eax, ebx
lea edi, [esp + 0x38]
jmp 0x537487
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
mov esi, dword [sym.imp.libstdc_6.dll_std::cout]
mov ebx, dword [ebp + 0x20]
sub ebx, dword [ebp + 0x1c]
mov ecx, dword [esi - 0xc]
shr ebx, 0x14
mov dword [esp], ebx
mov edi, dword [ecx + sym.imp.libstdc_6.dll_VTT_for_std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___]
and edi, 0xffffffb5
or edi, 2
mov dword [ecx + sym.imp.libstdc_6.dll_VTT_for_std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___], edi
mov ecx, sym.imp.libstdc_6.dll_std::cout
call sym.std::ostream_std::ostream::_M_insert_unsigned_long__unsigned_long_
sub esp, 4
mov dword [esp + 8], 3
mov dword [esp + 4], 0x6135a5
mov dword [esp], eax
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__int_
jmp 0x536de9
test edx, edx
je 0x536c1b
mov eax, ebx
jmp 0x537433
test edx, edx
je 0x536cec
mov eax, ebx
jmp 0x53733b
mov dword [esp + 4], 0
lea ecx, [esp + 0x20]
mov dword [esp], edi
mov dword [esp + 0x1c], edx
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_create_unsigned_int__unsigned_int_
sub esp, 8
mov edx, dword [esp + 0x38]
mov dword [esp + 0x20], eax
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], edx
mov dword [esp], eax
mov dword [esp + 4], ecx
call sym._memcpy
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x20]
jmp 0x536cee
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x258]
sub esp, 0x10
jmp 0x536593
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x258]
sub esp, 0x10
jmp 0x536625
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x258]
sub esp, 0x10
jmp 0x5365dc
mov dword [esp + 4], 0
lea ecx, [esp + 0x20]
mov dword [esp], edi
mov dword [esp + 0x1c], edx
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_create_unsigned_int__unsigned_int_
sub esp, 8
mov edx, dword [esp + 0x38]
mov dword [esp + 0x20], eax
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], edx
mov dword [esp], eax
mov dword [esp + 4], ecx
call sym._memcpy
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x20]
jmp 0x536c1d
lea edi, [esp + 0x38]
mov dword [esp + 4], 0
lea ecx, [esp + 0x20]
mov dword [esp], edi
mov dword [esp + 0x18], edx
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_create_unsigned_int__unsigned_int_
sub esp, 8
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x20], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 8], esi
mov dword [esp + 4], edx
mov dword [esp], eax
call sym._memcpy
mov esi, dword [esp + 0x38]
mov edx, dword [esp + 0x20]
jmp 0x536b48
mov dword [esp + 0xc], 1
mov ecx, edi
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], ebx
mov dword [esp + 0x1c], eax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov edx, dword [ebp + 0x288]
sub esp, 0x10
mov eax, dword [esp + 0x1c]
jmp 0x536adc
mov dword [esp + 0xc], 1
mov ecx, edi
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], ebx
mov dword [esp + 0x1c], eax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov edx, dword [ebp + 0x288]
sub esp, 0x10
mov eax, dword [esp + 0x1c]
jmp 0x536a93
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x270]
sub esp, 0x10
jmp 0x536a13
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x258]
sub esp, 0x10
jmp 0x536749
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x258]
sub esp, 0x10
jmp 0x536700
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x258]
sub esp, 0x10
jmp 0x5366b7
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x258]
sub esp, 0x10
jmp 0x53666e
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x270]
sub esp, 0x10
jmp 0x5369ca
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x270]
sub esp, 0x10
jmp 0x536981
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x270]
sub esp, 0x10
jmp 0x536938
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x258]
sub esp, 0x10
jmp 0x5368b6
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x258]
sub esp, 0x10
jmp 0x53686d
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x258]
sub esp, 0x10
jmp 0x536824
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x258]
sub esp, 0x10
jmp 0x5367db
mov dword [esp + 0xc], 1
mov ecx, dword [esp + 0x18]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_mutate_unsigned_int__unsigned_int__char_const__unsigned_int_
mov eax, dword [ebp + 0x258]
sub esp, 0x10
jmp 0x536792
mov ecx, 0xf
jmp 0x53681c
mov ecx, 0xf
jmp 0x536a8b
mov esi, 0xf
jmp 0x536ad4
mov edx, 0xf
jmp 0x536741
mov ecx, 0xf
jmp 0x53678a
mov edx, 0xf
jmp 0x53658b
mov edx, 0xf
jmp 0x53661d
mov ecx, 0xf
jmp 0x536666
mov ecx, 0xf
jmp 0x5365d4
mov edx, 0xf
jmp 0x536930
mov ecx, 0xf
jmp 0x536979
mov edx, 0xf
jmp 0x536865
mov ebx, 0xf
jmp 0x5368ae
mov edx, 0xf
jmp 0x5366af
mov ecx, 0xf
jmp 0x5366f8
mov edx, 0xf
jmp 0x5369c2
mov ebx, 0xf
jmp 0x536a0b
mov edx, 0xf
jmp 0x5367d3
mov dword [ebp + 0x2b8], ebx
jmp 0x537045