Function at 0x482c4d
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
and esp, 0xfffffff0
sub esp, 0x50
mov ebx, dword [ebp + 0x14]
test ebx, ebx
je 0x4834e4
cmp dword [ebx], 0
je 0x4834e4
mov eax, dword [ebp + 0x10]
mov edi, dword [ebp + 8]
mov byte [eax], 0
mov eax, dword [ebp + 8]
movzx edx, byte [eax + 0x20]
xor eax, eax
test dl, 1
sete al
add eax, edx
add eax, 0x21
add edi, eax
mov dword [esp + 0x4c], edi
mov edi, dword [ebp + 8]
movzx edx, byte [edi]
sub edx, eax
movzx eax, byte [ebx + 0x14]
mov dword [esp + 0x48], edx
cmp al, 0xff
je 0x482cbc
sub dword [esp + 0x48], eax
add dword [esp + 0x4c], eax
xor eax, eax
cmp dword [esp + 0x48], 0
cmovns eax, dword [esp + 0x48]
mov dword [esp + 0x48], eax
xor edi, edi
xor esi, esi
mov byte [esp + 0x2a], 0
mov dword [esp + 0x14], esi
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x18], edi
mov dword [esp + 0x24], edi
cmp dword [esp + 0x48], 1
jle 0x483412
mov edi, dword [esp + 0x4c]
mov eax, dword [esp + 0x4c]
mov dl, byte [edi + 2]
movzx eax, word [eax]
test dl, dl
je 0x4834d8
movzx esi, dl
sub dword [esp + 0x48], esi
add edi, esi
mov dword [esp + 0x1c], edi
cmp eax, 0x4c50
je 0x48339e
jg 0x482d5f
cmp eax, 0x4653
je 0x4833ea
jg 0x482d44
cmp eax, 0x4543
je 0x482e27
cmp eax, 0x4552
je 0x4833c4
jmp 0x48349f
cmp eax, 0x4654
je 0x483121
cmp eax, 0x4c43
je 0x483335
jmp 0x48349f
cmp eax, 0x5053
je 0x482df1
jg 0x482d87
cmp eax, 0x4c53
je 0x482fab
cmp eax, 0x4d4e
je 0x482ee2
jmp 0x48349f
cmp eax, 0x5245
je 0x482ea8
cmp eax, 0x5850
jne 0x48349f
mov eax, dword [esp + 0x4c]
mov edx, dword [eax + 8]
mov eax, dword [eax + 4]
call fcn.00482bcc
mov dword [ebx + 4], eax
mov eax, dword [esp + 0x4c]
mov edx, dword [eax + 0x10]
mov eax, dword [eax + 0xc]
call fcn.00482bcc
mov dword [ebx + 8], eax
mov eax, dword [esp + 0x4c]
mov edx, dword [eax + 0x18]
mov eax, dword [eax + 0x14]
call fcn.00482bcc
mov dword [ebx + 0xc], eax
mov eax, dword [esp + 0x4c]
mov edx, dword [eax + 0x20]
mov eax, dword [eax + 0x1c]
call fcn.00482bcc
or dword [ebx + 0xaa], 8
mov dword [ebx + 0x10], eax
jmp 0x48349f
mov eax, dword [esp + 0x4c]
cmp byte [eax + 4], 0xbe
jne 0x482e05
mov eax, dword [esp + 0x4c]
cmp byte [eax + 5], 0xef
je 0x482e11
mov dword [esp], str.Invalid_Rock_Ridge_SP_field
jmp 0x482e92
mov eax, dword [esp + 0x4c]
mov al, byte [eax + 6]
or dword [ebx + 0xaa], 1
mov byte [ebx + 0x14], al
jmp 0x48349f
mov eax, dword [ebp + 8]
mov dl, byte [eax + 0x20]
mov al, byte [eax + 0x21]
test al, al
jne 0x482e38
dec dl
jmp 0x482e3e
dec dl
jne 0x482e44
dec al
je 0x48349f
mov eax, dword [esp + 0x4c]
mov edx, dword [eax + 8]
mov eax, dword [eax + 4]
call fcn.00482bcc
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x4c]
mov edx, dword [eax + 0x10]
mov eax, dword [eax + 0xc]
call fcn.00482bcc
mov dword [esp + 0x20], eax
cmp eax, 0x7ff
ja 0x482e8b
mov eax, dword [esp + 0x4c]
mov edx, dword [eax + 0x18]
mov eax, dword [eax + 0x14]
call fcn.00482bcc
mov dword [esp + 0x2c], eax
cmp eax, 0x7ff
jbe 0x482e9c
mov dword [esp], str.Invalid_Rock_Ridge_CE_field
call fcn.00484f39
jmp 0x4834d8
or dword [ebx + 0xaa], 4
jmp 0x48349f
mov dword [esp], str.ISO_9660_Extensions:
xor esi, esi
call fcn.00484f09
mov eax, dword [esp + 0x4c]
movzx eax, byte [eax + 4]
cmp eax, esi
jle 0x48349f
mov eax, dword [esp + 0x4c]
movsx eax, byte [eax + esi + 8]
mov dword [esp], 0x4c0e02
inc esi
mov dword [esp + 4], eax
call fcn.00484f09
jmp 0x482eb6
or dword [ebx + 0xaa], 0x40
cmp dword [esp + 0x14], 0
jne 0x48349f
mov eax, dword [esp + 0x4c]
movzx eax, byte [eax + 4]
test al, 4
je 0x482f20
mov dword [esp + 4], 0x4c0e05
mov eax, dword [ebp + 0x10]
mov dword [esp], eax
call sub.msvcrt.dll_strcat
mov dword [esp + 0x40], 3
jmp 0x48349f
test al, 2
je 0x482f44
mov dword [esp + 4], 0x4c0e08
mov eax, dword [ebp + 0x10]
mov dword [esp], eax
call sub.msvcrt.dll_strcat
mov dword [esp + 0x40], 2
jmp 0x48349f
cmp al, 1
jbe 0x482f5d
mov dword [esp + 4], eax
mov dword [esp], str.Unsupported_NM_flag_settings___d_
call fcn.00484f21
jmp 0x48349f
mov eax, dword [ebp + 0x10]
sub esi, 5
mov dword [esp], eax
call sub.msvcrt.dll_strlen
add eax, esi
cmp eax, 0xfd
ja 0x483405
mov eax, dword [esp + 0x4c]
mov dword [esp + 8], esi
add eax, 5
mov dword [esp + 4], eax
mov eax, dword [ebp + 0x10]
mov dword [esp], eax
call sub.msvcrt.dll_strncat
mov eax, dword [esp + 0x4c]
mov edi, dword [esp + 0x40]
movzx eax, byte [eax + 2]
lea eax, [edi + eax - 5]
mov dword [esp + 0x40], eax
jmp 0x48349f
lea eax, [edx - 5]
or dword [ebx + 0xaa], 0x20
mov byte [esp + 0x2b], al
mov eax, dword [esp + 0x4c]
add eax, 5
cmp byte [esp + 0x2b], 1
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x24]
mov dword [ebx + 0x15], eax
jbe 0x4830fe
mov eax, dword [esp + 0x30]
movzx eax, byte [eax]
and eax, 0xfffffffe
cmp eax, 4
je 0x483044
jg 0x48301c
test eax, eax
jne 0x483060
mov eax, dword [esp + 0x30]
movzx edx, byte [eax + 1]
mov eax, ebx
call fcn.00482bcd
mov esi, dword [esp + 0x30]
mov eax, dword [ebx + 0x15]
add eax, dword [ebx + 0x1d]
movzx ecx, byte [esi + 1]
mov edi, eax
lea esi, [esi + 2]
mov eax, dword [esp + 0x30]
rep movsb byte es:[edi], byte [esi]
movzx eax, byte [eax + 1]
add dword [ebx + 0x15], eax
jmp 0x48307c
cmp eax, 8
jne 0x483080
mov edx, 1
mov eax, ebx
call fcn.00482bcd
mov eax, dword [ebx + 0x15]
mov edx, dword [ebx + 0x1d]
lea ecx, [eax + 1]
mov dword [ebx + 0x15], ecx
mov byte [edx + eax], 0x2f
mov edx, 1
jmp 0x48308e
mov edx, 1
mov eax, ebx
call fcn.00482bcd
mov eax, dword [ebx + 0x15]
mov edx, dword [ebx + 0x1d]
lea ecx, [eax + 1]
mov dword [ebx + 0x15], ecx
mov byte [edx + eax], 0x2e
mov edx, 1
mov eax, ebx
call fcn.00482bcd
mov eax, dword [ebx + 0x15]
mov edx, dword [ebx + 0x1d]
lea ecx, [eax + 1]
mov dword [ebx + 0x15], ecx
mov byte [edx + eax], 0x2e
xor edx, edx
jmp 0x48308e
mov dword [esp], str.Symlink_component_flag_not_implemented
call fcn.00484f39
jmp 0x48307c
mov eax, dword [esp + 0x30]
mov cl, byte [esp + 0x2b]
mov esi, dword [esp + 0x30]
movzx eax, byte [eax + 1]
sub ecx, 2
sub ecx, eax
lea esi, [esi + eax + 2]
mov byte [esp + 0x2b], cl
cmp cl, 1
ja 0x4830cc
mov edi, dword [esp + 0x4c]
mov eax, dword [ebx + 0x15]
test byte [edi + 4], 1
je 0x4830fe
mov esi, dword [esp + 0x30]
test byte [esi], 1
jne 0x4830fe
inc eax
mov dword [ebx + 0x15], eax
jmp 0x4830fe
test edx, edx
jne 0x4830f5
mov eax, dword [esp + 0x30]
test byte [eax], 1
jne 0x4830f5
mov edx, 1
mov eax, ebx
call fcn.00482bcd
mov eax, dword [ebx + 0x15]
mov edx, dword [ebx + 0x1d]
lea ecx, [eax + 1]
mov dword [ebx + 0x15], ecx
mov byte [edx + eax], 0x2f
mov dword [esp + 0x30], esi
jmp 0x482fd6
mov eax, dword [ebx + 0x15]
mov edx, 1
mov dword [esp + 0x24], eax
mov eax, ebx
call fcn.00482bcd
mov eax, dword [ebx + 0x1d]
mov edi, dword [esp + 0x24]
mov byte [eax + edi], 0
jmp 0x48349f
mov eax, dword [esp + 0x4c]
mov dl, byte [eax + 4]
xor eax, eax
test dl, 1
je 0x48317c
mov eax, edx
mov byte [ebx + 0x21], 1
shr al, 7
test dl, dl
mov byte [ebx + 0x22], al
mov eax, dword [esp + 0x4c]
lea edx, [eax + 5]
lea eax, [ebx + 0x23]
jns 0x483167
mov esi, dword [esp + 0x4c]
movups xmm0, xmmword [esi + 5]
movups xmmword [ebx + 0x23], xmm0
mov dl, byte [edx + 0x10]
movups xmmword [esp + 0x30], xmm0
mov byte [eax + 0x10], dl
mov eax, 0x11
jmp 0x48317c
mov edi, dword [esp + 0x4c]
mov ecx, dword [edi + 5]
mov dword [ebx + 0x23], ecx
mov edx, dword [edx + 3]
mov dword [eax + 3], edx
mov eax, 7
mov esi, dword [esp + 0x4c]
mov cl, byte [esi + 4]
test cl, 2
je 0x4831bf
mov edx, ecx
mov byte [ebx + 0x34], 1
shr dl, 7
test cl, cl
lea ecx, [ebx + 0x36]
mov byte [ebx + 0x35], dl
lea edx, [esi + eax + 5]
jns 0x4831b1
movups xmm2, xmmword [edx]
add eax, 0x11
movups xmmword [ebx + 0x36], xmm2
mov dl, byte [edx + 0x10]
mov byte [ecx + 0x10], dl
jmp 0x4831bf
mov esi, dword [edx]
add eax, 7
mov dword [ebx + 0x36], esi
mov edx, dword [edx + 3]
mov dword [ecx + 3], edx
mov esi, dword [esp + 0x4c]
mov cl, byte [esi + 4]
test cl, 4
je 0x483202
mov edx, ecx
mov byte [ebx + 0x47], 1
shr dl, 7
test cl, cl
lea ecx, [ebx + 0x49]
mov byte [ebx + 0x48], dl
lea edx, [esi + eax + 5]
jns 0x4831f4
movups xmm3, xmmword [edx]
add eax, 0x11
movups xmmword [ebx + 0x49], xmm3
mov dl, byte [edx + 0x10]
mov byte [ecx + 0x10], dl
jmp 0x483202
mov esi, dword [edx]
add eax, 7
mov dword [ebx + 0x49], esi
mov edx, dword [edx + 3]
mov dword [ecx + 3], edx
mov esi, dword [esp + 0x4c]
mov cl, byte [esi + 4]
test cl, 8
je 0x483245
mov edx, ecx
mov byte [ebx + 0x5a], 1
shr dl, 7
test cl, cl
lea ecx, [ebx + 0x5c]
mov byte [ebx + 0x5b], dl
lea edx, [esi + eax + 5]
jns 0x483237
movups xmm4, xmmword [edx]
add eax, 0x11
movups xmmword [ebx + 0x5c], xmm4
mov dl, byte [edx + 0x10]
mov byte [ecx + 0x10], dl
jmp 0x483245
mov esi, dword [edx]
add eax, 7
mov dword [ebx + 0x5c], esi
mov edx, dword [edx + 3]
mov dword [ecx + 3], edx
mov esi, dword [esp + 0x4c]
mov cl, byte [esi + 4]
test cl, 0x10
je 0x483288
mov edx, ecx
mov byte [ebx + 0x6d], 1
shr dl, 7
test cl, cl
lea ecx, [ebx + 0x6f]
mov byte [ebx + 0x6e], dl
lea edx, [esi + eax + 5]
jns 0x48327a
movups xmm5, xmmword [edx]
add eax, 0x11
movups xmmword [ebx + 0x6f], xmm5
mov dl, byte [edx + 0x10]
mov byte [ecx + 0x10], dl
jmp 0x483288
mov esi, dword [edx]
add eax, 7
mov dword [ebx + 0x6f], esi
mov edx, dword [edx + 3]
mov dword [ecx + 3], edx
mov esi, dword [esp + 0x4c]
mov cl, byte [esi + 4]
test cl, 0x20
je 0x4832da
mov edx, ecx
mov byte [ebx + 0x80], 1
shr dl, 7
test cl, cl
lea ecx, [ebx + 0x82]
mov byte [ebx + 0x81], dl
lea edx, [esi + eax + 5]
jns 0x4832c9
movups xmm6, xmmword [edx]
add eax, 0x11
movups xmmword [ebx + 0x82], xmm6
mov dl, byte [edx + 0x10]
mov byte [ecx + 0x10], dl
jmp 0x4832da
mov esi, dword [edx]
add eax, 7
mov dword [ebx + 0x82], esi
mov edx, dword [edx + 3]
mov dword [ecx + 3], edx
mov esi, dword [esp + 0x4c]
mov dl, byte [esi + 4]
test dl, 0x40
je 0x483326
mov ecx, edx
mov byte [ebx + 0x93], 1
lea eax, [esi + eax + 5]
shr cl, 7
test dl, dl
lea edx, [ebx + 0x95]
mov byte [ebx + 0x94], cl
jns 0x483318
movups xmm7, xmmword [eax]
movups xmmword [ebx + 0x95], xmm7
mov al, byte [eax + 0x10]
mov byte [edx + 0x10], al
jmp 0x483326
mov ecx, dword [eax]
mov dword [ebx + 0x95], ecx
mov eax, dword [eax + 3]
mov dword [edx + 3], eax
or dword [ebx + 0xaa], 0x80
jmp 0x48349f
cmp dword [ebp + 0xc], 0
je 0x48349f
mov eax, dword [ebp + 0xc]
test byte [eax + 2], 1
jne 0x48349f
or dword [ebx + 0xaa], 0x100
mov eax, dword [esp + 0x4c]
mov edx, dword [eax + 8]
mov eax, dword [eax + 4]
call fcn.00482bcc
mov dword [esp + 4], eax
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call fcn.00482a2a
test eax, eax
jne 0x483381
mov dword [esp], str.Could_not_get_Rock_Ridge_deep_directory_child
jmp 0x4833fb
mov edi, ebx
mov esi, eax
mov ecx, 0x3e
rep movsd dword es:[edi], dword [esi]
xor ecx, ecx
mov dword [eax + 0x1d], ecx
mov dword [esp], eax
call fcn.004804b8
jmp 0x48349f
cmp dword [ebp + 0xc], 0
je 0x48349f
mov eax, dword [ebp + 0xc]
test byte [eax + 2], 1
jne 0x48349f
or dword [ebx + 0xaa], 0x200
jmp 0x48349f
cmp dword [ebp + 0xc], 0
je 0x48349f
mov eax, dword [ebp + 0xc]
test byte [eax + 2], 1
jne 0x48349f
or dword [ebx + 0xaa], 0x400
jmp 0x48349f
or dword [ebx + 0xaa], 0x800
mov dword [esp], str.Rock_Ridge_Sparse_File_detected
call fcn.00484f39
jmp 0x48349f
mov dword [esp + 0x14], 1
jmp 0x48349f
cmp dword [esp + 0x2c], 0
je 0x4834b8
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call sub.msvcrt.dll_free
mov dword [esp + 4], 0x800
mov dword [esp], 1
call sub.msvcrt.dll_calloc
mov dword [esp + 0x44], eax
test eax, eax
je 0x4834d8
mov eax, dword [esp + 0x18]
mov dword [esp + 0xc], 1
mov dword [esp + 8], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call fcn.00481457
cmp eax, 0x800
jne 0x4834d8
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x20]
add eax, esi
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x48], eax
mov al, byte [esp + 0x2a]
inc eax
cmp byte [esp + 0x2a], 0x3f
ja 0x4834ac
xor edx, edx
mov byte [esp + 0x2a], al
mov dword [esp + 0x2c], edx
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x4c], eax
jmp 0x482ce1
mov dword [esp], str.More_than_64_consecutive_Rock_Ridge_CEs_detected
call fcn.00484f39
test dword [ebx + 0xaa], 0xffa
je 0x4834ca
mov dword [ebx], 1
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call sub.msvcrt.dll_free
jmp 0x4834ea
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call sub.msvcrt.dll_free
xor eax, eax
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x40]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret