Function at 0x4153a0
Capabilities:
Parse pe header

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x2c
mov ebx, dword [esp + 0x40]
mov esi, dword [esp + 0x48]
call fcn.00431690
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
cmp dword [esp + 0x44], 0x10000
je 0x415400
mov dword [esp + 4], 0x7f00
mov dword [esp], 0
call sub.USER32.dll_LoadCursorW
sub esp, 8
mov edi, eax
test ebx, ebx
je 0x415500
cmp ebx, 6
ja case.0x4153f8.0
jmp dword [ebx*4 + 0x4341a4]
mov dword [esp + 4], 0
mov dword [esp], 9
call fcn.0041f679
sub esp, 8
mov dword [esp + 4], 0x441c28
mov dword [esp], 0xa
call fcn.0041f4dc
sub esp, 8
mov dword [esp + 4], 0x441c28
mov dword [esp], 0xc
call fcn.0041f4dc
sub esp, 8
mov dword [esp + 4], 0x7f8a
mov dword [esp], 0
call sub.USER32.dll_LoadCursorW
sub esp, 8
mov esi, eax
cmp ebx, 3
je 0x4154c8
cmp ebx, 4
je 0x4154d8
cmp ebx, 2
je 0x4154e8
cmp ebx, 5
je 0x4154f1
cmp ebx, 6
jne 0x41549d
mov dword [esp], 0x66
call fcn.0041f65d
sub esp, 4
mov dword [esp + 8], esi
mov dword [esp + 4], 0xfffffff4
mov dword [esp], eax
call sub.USER32.dll_SetClassLongW
sub esp, 0xc
mov dword [esp], ebx
call fcn.00427f1f
sub esp, 4
mov dword [esp + 8], esi
mov dword [esp + 4], 0xfffffff4
mov dword [esp], eax
call sub.USER32.dll_SetClassLongW
sub esp, 0xc
jmp 0x41572b
mov dword [esp], 0x3d
jmp 0x41547e
mov dword [esp], 0x49
jmp 0x41547e
mov dword [esp], 0x1f
jmp 0x41547e
mov dword [esp], 0x5c
jmp 0x41547e
mov eax, esi
test al, al
je case.0x4153f8.0
mov dword [esp], 4
call fcn.0041f5cb
sub esp, 4
mov dword [esp], 1
call fcn.00401bf0
sub esp, 4
jmp case.0x4153f8.0
mov dword [esp + 4], 0
mov dword [esp], 0x20
call fcn.0041f5a0
sub esp, 8
mov dword [esp + 4], 0x43c1f4
mov dword [esp], 0x3d
call fcn.0041f4dc
sub esp, 8
mov dword [esp], 0x3d
call fcn.0041f65d
sub esp, 4
mov dword [esp + 8], edi
mov dword [esp + 4], 0xfffffff4
mov dword [esp], eax
call sub.USER32.dll_SetClassLongW
sub esp, 0xc
mov eax, esi
test al, al
je 0x41559e
mov dword [esp], 0
call fcn.00402a20
sub esp, 4
jmp case.0x4153f8.0
call fcn.00431730
call fcn.00431730
call fcn.00431730
call fcn.00431780
mov dword [esp + 4], eax
mov dword [esp], 0x27
call fcn.0041f474
sub esp, 8
call fcn.00431b20
call fcn.00431880
mov dword [esp + 4], eax
mov dword [esp], 0x27
call fcn.00402650
sub esp, 8
call fcn.004317e0
call fcn.00431730
call fcn.00431730
call fcn.00431730
call fcn.00431780
mov dword [esp + 4], eax
mov dword [esp], 0x27
call fcn.0041f474
sub esp, 8
call fcn.00431880
mov dword [esp], eax
call fcn.004294d0
sub esp, 4
mov ebp, eax
mov esi, edx
call fcn.004317e0
xor eax, eax
cmp eax, ebp
sbb eax, esi
jge 0x41558a
call fcn.00431730
call fcn.00431730
call fcn.00431730
call fcn.00431780
mov dword [esp + 4], eax
mov dword [esp], 0x27
call fcn.0041f474
sub esp, 8
call fcn.00431880
mov dword [esp + 8], str.WIM_files__.wim__.esd__.iso_.wim__.esd__.iso
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.004135a0
sub esp, 0xc
call fcn.004317e0
jmp 0x41558a
mov dword [esp + 4], 0
mov dword [esp], 0x3e
call fcn.0041f5a0
sub esp, 8
mov dword [esp + 4], 0x43c1f4
mov dword [esp], 0x49
call fcn.0041f4dc
sub esp, 8
mov dword [esp], 0x49
call fcn.0041f65d
sub esp, 4
mov dword [esp + 8], edi
mov dword [esp + 4], 0xfffffff4
mov dword [esp], eax
call sub.USER32.dll_SetClassLongW
sub esp, 0xc
mov dword [esp], ebx
call fcn.00427f1f
sub esp, 4
mov dword [esp + 8], edi
mov dword [esp + 4], 0xfffffff4
mov dword [esp], eax
call sub.USER32.dll_SetClassLongW
sub esp, 0xc
lea eax, [esp + 0x18]
mov dword [esp], eax
call sub.USER32.dll_GetCursorPos
sub esp, 4
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.USER32.dll_SetCursorPos
sub esp, 8
mov byte [0x441be4], 0
xor eax, eax
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
mov dword [esp + 4], 0
mov dword [esp], 0x19
call fcn.0041f5a0
sub esp, 8
mov dword [esp + 4], 0x43c1f4
mov dword [esp], 0x1f
call fcn.0041f4dc
sub esp, 8
mov dword [esp], 0x1f
call fcn.0041f65d
sub esp, 4
mov dword [esp + 8], edi
mov dword [esp + 4], 0xfffffff4
mov dword [esp], eax
call sub.USER32.dll_SetClassLongW
sub esp, 0xc
mov eax, esi
test al, al
jne case.0x4153f8.0
call fcn.00431730
call fcn.00431730
call fcn.00431730
call fcn.00431780
mov dword [esp + 4], eax
mov dword [esp], 0x1b
call fcn.0041f474
sub esp, 8
call fcn.00431b20
call fcn.00431880
mov dword [esp + 4], eax
mov dword [esp], 0x1b
call fcn.00402650
sub esp, 8
call fcn.004317e0
jmp case.0x4153f8.0
mov dword [esp + 4], 0
mov dword [esp], 0x4a
call fcn.0041f5a0
sub esp, 8
mov dword [esp + 4], 0x43c1f4
mov dword [esp], 0x5c
call fcn.0041f4dc
sub esp, 8
mov dword [esp], 0x5c
jmp 0x4156bd
mov dword [esp + 4], 0
mov dword [esp], 0x5d
call fcn.0041f5a0
sub esp, 8
mov dword [esp + 4], 0x43c1f4
mov dword [esp], 0x66
call fcn.0041f4dc
sub esp, 8
mov dword [esp], 0x66
jmp 0x4156bd