Function at 0x48dc10
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x5385a3
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x64
push ebx
mov ebx, dword [0x682948]
push ebp
push esi
xor esi, esi
push edi
cmp ebx, esi
push str.Called_Shell_InputName___without_shell_initialised
setne al
push eax
call fcn.004015b0
mov ecx, dword [esp + 0x98]
add esp, 8
cmp ecx, esi
mov dword [esp + 0x28], esi
mov dword [esp + 0x14], esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x18], esi
mov eax, 0x20
je 0x48dc7b
mov dword [esp + 0x14], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], 0x5a
mov ecx, dword [0x6b4ca0]
push ecx
call fcn.004e5d80
add esp, 4
mov esi, 0x2710
push 0xa
call fcn.004e5da0
add esp, 4
dec esi
jne 0x48dc8f
push 1
call fcn.004e5d60
mov al, byte [0x54d341]
add esp, 4
test al, al
jne 0x48dcbc
push str.stubbed_out:_DrawSync
call fcn.0046cb90
add esp, 4
call fcn.00430680
mov al, byte [0x54d341]
test al, al
jne 0x48dcd7
push str.stubbed_out:_DrawSync
call fcn.0046cb90
add esp, 4
mov edx, dword [esp + 0x84]
mov eax, edx
mov edi, edx
mov ecx, dword [eax]
mov dword [esp + 0x48], ecx
mov ecx, dword [eax + 4]
mov dword [esp + 0x4c], ecx
or ecx, 0xffffffff
mov al, byte [eax + 8]
mov byte [esp + 0x50], al
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
cmp ebx, 8
mov dword [esp + 0x24], ebx
jge 0x48dd28
mov ecx, 8
lea edi, [ebx + edx]
sub ecx, ebx
mov eax, 0x2e2e2e2e
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x84]
xor esi, esi
xor ebp, ebp
mov byte [esp + 0x30], 0
mov byte [eax + 8], 0
mov eax, dword [esp + 0x88]
cmp eax, esi
mov dword [esp + 0x10], esi
mov dword [0x56f1b4], esi
mov dword [0x56f1b8], esi
mov dword [0x56f1bc], esi
mov word [0x56f1dc], si
mov word [0x56f1de], si
mov word [0x56f1e0], si
mov dword [0x56f1b0], esi
jne 0x48dd87
mov ebp, 0x80
mov dword [0x5512ec], 0x100
call fcn.00430880
call fcn.00430630
call fcn.004553e0
mov ecx, dword [0x6b4ca0]
mov al, byte [0xac08c4]
test al, al
mov dword [esp + 0x88], ecx
jne 0x48ddb8
push 0xffffffffffffffff
push 1
call fcn.00505e00
add esp, 8
push esi
push 0x6b
push 0x3c
push 0x45
call fcn.00458640
push 0xfff
call fcn.00458630
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x98]
push 0x1000
push esi
lea edi, [edx + 0x100]
push eax
push 0xc4
push edi
call fcn.00458700
mov eax, dword [0x6a7780]
add esp, 0x28
cmp eax, esi
jne 0x48de0f
push 0x6a7780
push str.menubg
call fcn.004cb5b0
add esp, 8
mov ecx, dword [0x6a7780]
push 0x80
push 0xf0
push 0x200
mov eax, dword [ecx + 4]
push esi
push esi
push eax
push 0xbf800000
call fcn.00509d20
mov eax, dword [esp + 0xa8]
add esp, 0x1c
cmp eax, esi
push 0x1d
push 0xffffffffffffffeb
push 0x96
push esi
push 1
je 0x48de57
mov edx, dword [str.enter_cheat]
push edx
jmp 0x48de5d
mov eax, dword [str.Input_name]
push eax
push 0x26
push ebp
call fcn.0048d9c0
add esp, 0x20
push esi
push 0x80
push 0x80
push 0x80
call fcn.00458640
mov ecx, dword [str.Finish]
push 0x1000
push esi
push ecx
push 0xa7
push edi
call fcn.00458700
mov eax, dword [esp + 0x34]
add esp, 0x24
cmp eax, esi
je 0x48dee9
push 0x56f1e4
push 0x56f1dc
call fcn.0046e730
push 0x56f1b4
push 0x56f1e4
call fcn.0046cfa0
mov edx, dword [0x56fb2c]
mov eax, dword [edx + 0x70]
push eax
push 0x54d490
push 0x56f1b0
call fcn.00472dc0
mov ecx, dword [esp + 0x2c]
push ecx
call fcn.004739a0
add esp, 0x20
call fcn.004737f0
cmp dword [esp + 0x18], esi
je 0x48df4d
mov edi, dword [esp + 0x90]
cmp edi, esi
je 0x48df4d
call fcn.0047a390
push esi
push 0x64
push 0x64
push 0x64
call fcn.00458640
push 0x64
push 0x64
push 0x64
call fcn.00458670
push 0xff
call fcn.004586b0
push esi
call fcn.00458610
push 0x1000
push esi
push edi
push 0x37
push 0x100
call fcn.00458700
call fcn.0047a370
call fcn.0047a3b0
push 0x29
call fcn.004586b0
add esp, 0x3c
call fcn.0050c470
mov al, byte [0xac08c4]
test al, al
je 0x48df65
push 1
call fcn.00506160
add esp, 4
push 0x80
push ebp
call fcn.0047a570
mov edx, dword [0x5512ec]
push 0x100
push edx
mov dword [esp + 0x3c], eax
call fcn.0047a570
mov ecx, dword [esp + 0x2c]
mov dword [0x5512ec], eax
mov eax, dword [esp + 0x24]
add esp, 0x10
add ecx, 0x2b2
sub eax, 2
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], eax
jns 0x48dfac
mov dword [esp + 0x14], esi
mov eax, dword [esp + 0x1c]
and eax, 0xfff
movsx eax, word [eax*4 + 0x610c4a]
imul eax, dword [esp + 0x14]
cdq
and edx, 0xfff
add eax, edx
sar eax, 0xc
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x18]
cmp eax, esi
je 0x48dfdf
dec eax
mov dword [esp + 0x18], eax
inc dword [0x60cfa8]
call fcn.00505720
cmp dword [0x54d38c], esi
jne 0x48e3d8
cmp dword [esp + 0x8c], esi
jne 0x48e01a
push esi
push esi
call fcn.0046c9a0
mov ecx, dword [0x6109d4]
or eax, 0xffffffff
add esp, 8
cmp ecx, eax
je 0x48e3ee
cmp dword [esp + 0x10], esi
je 0x48e02d
push 0x661100
call fcn.00479420
add esp, 4
xor ebp, ebp
push 1
push ebp
call fcn.0050a650
add esp, 8
test eax, eax
je 0x48e0f7
lea ecx, [esp + 0x54]
push ecx
push ebp
call fcn.00501550
lea edi, [esp + 0x5c]
or ecx, 0xffffffff
xor eax, eax
add esp, 8
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 1
jne 0x48e096
mov al, byte [esp + 0x54]
cmp al, 0x41
jl 0x48e06f
cmp al, 0x5a
jle 0x48e07b
cmp al, 0x30
jl 0x48e0f7
cmp al, 0x39
jg 0x48e0f7
cmp ebx, 8
jge 0x48e0f7
mov edx, dword [esp + 0x84]
push 0
push 0x2000
push 0x1f
mov byte [ebx + edx], al
inc ebx
jmp 0x48e0ef
lea eax, [esp + 0x54]
push str.BACK
push eax
call fcn.005352f0
add esp, 8
test eax, eax
jne 0x48e0be
test ebx, ebx
je 0x48e0f7
mov ecx, dword [esp + 0x84]
dec ebx
mov byte [ebx + ecx], 0x2e
jmp 0x48e0e6
lea edx, [esp + 0x54]
push str.SPACE
push edx
call fcn.005352f0
add esp, 8
test eax, eax
jne 0x48e0f7
cmp ebx, 8
jge 0x48e0f7
mov eax, dword [esp + 0x84]
inc ebx
mov byte [ebx + eax - 1], 0x20
push 0
push 0x3fff
push 0x29
call fcn.00471c50
add esp, 0xc
inc ebp
cmp ebp, 0x100
jl 0x48e02f
push 1
push 1
push 0x10010
mov dword [esp + 0x30], ebx
call fcn.0050c180
add esp, 0xc
test al, al
je 0x48e2f8
mov ecx, dword [esp + 0x84]
mov esi, 0x552744
mov edx, dword [ecx]
mov dword [esp + 0x30], edx
mov eax, dword [ecx + 4]
mov dword [esp + 0x34], eax
mov cl, byte [ecx + 8]
mov byte [esp + 0x38], cl
mov eax, dword [esi]
lea edx, [esp + 0x3c]
push 9
push edx
push eax
call fcn.004e65e0
mov bl, byte [esp + 0x48]
add esp, 0xc
test bl, bl
lea eax, [esp + 0x3c]
je 0x48e171
mov cl, bl
dec cl
mov byte [eax], cl
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x48e161
mov bl, byte [esp + 0x3c]
mov al, byte [esp + 0x30]
lea ebp, [esp + 0x30]
test al, al
je 0x48e1c6
test bl, bl
lea edx, [esp + 0x3c]
je 0x48e1b9
mov edi, ebp
lea ecx, [esp + 0x3c]
sub edi, ecx
mov al, byte [edi + edx]
test al, al
je 0x48e1b9
mov cl, byte [edx]
cmp cl, 0x41
jl 0x48e1a3
cmp cl, 0x5a
jg 0x48e1a3
add cl, 0x20
cmp al, 0x41
jl 0x48e1ad
cmp al, 0x5a
jg 0x48e1ad
add al, 0x20
cmp cl, al
jne 0x48e1b9
mov al, byte [edx + 1]
inc edx
test al, al
jne 0x48e18d
cmp byte [edx], 0
je 0x48e1da
mov al, byte [ebp + 1]
inc ebp
test al, al
jne 0x48e17d
add esi, 4
cmp esi, 0x5527b8
jge 0x48e2e8
jmp 0x48e141
lea edx, [esp + 0x30]
push 9
push edx
push 0x1e
call fcn.004e5da0
mov eax, dword [eax*4 + 0x5527b8]
add esp, 4
push eax
call fcn.004e65e0
mov edx, eax
add esp, 0xc
cmp edx, 8
jge 0x48e220
mov ecx, 8
lea edi, [esp + edx + 0x30]
sub ecx, edx
mov eax, 0x2e2e2e2e
mov esi, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, esi
and ecx, 3
rep stosb byte es:[edi], al
test edx, edx
je 0x48e2e8
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x24], edx
test ecx, ecx
je 0x48e23a
mov edx, dword [ecx]
push 1
call dword [edx]
push 0x1ac
call fcn.00455390
mov esi, eax
add esp, 4
mov dword [esp + 0x10], esi
test esi, esi
mov dword [esp + 0x7c], 0
je 0x48e2d8
mov ecx, esi
call fcn.00460720
push 0x54b0e4
mov ecx, esi
mov byte [esp + 0x80], 1
mov dword [esi], 0x53bee8
call fcn.00460020
mov edi, dword [esi + 0x194]
or word [esi + 4], 0x480
push 0xffffffffffffffff
or edi, 0x420
push 0
push 0
mov ecx, esi
mov dword [esi + 0x3c], 0x552710
mov dword [esi + 0x194], edi
call fcn.00460c10
mov word [esi + 0x128], 0x12
mov dword [esi + 8], 0xfff92000
mov dword [esi + 0xc], 0x104000
mov dword [esi + 0x10], 0x1f4000
mov word [esi + 0x16], 0xfd76
mov dword [esp + 0x7c], 0xffffffff
mov dword [esp + 0x10], esi
jmp 0x48e2f8
xor esi, esi
mov dword [esp + 0x7c], 0xffffffff
mov dword [esp + 0x10], esi
jmp 0x48e2f8
mov eax, dword [esp + 0x84]
cmp byte [eax], 0x2e
jne 0x48e47c
push 1
push 1
push 0x20220
call fcn.0050c180
add esp, 0xc
test al, al
jne 0x48e3f2
xor edi, edi
mov eax, dword [0x5598b8]
cmp eax, edi
jne 0x48e32b
call fcn.004e5c10
mov dword [0x5598b8], 1
mov esi, dword [esp + 0x10]
cmp esi, edi
je 0x48e37e
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 8]
cmp word [esi + 0x12a], 0x64
jne 0x48e369
cmp word [esi + 0x128], 6
jne 0x48e369
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
mov dword [eax], ecx
mov cl, byte [esp + 0x38]
mov dword [eax + 4], edx
mov byte [eax + 8], cl
cmp dword [esi + 0xc], 0x104000
jle 0x48e37e
mov edx, dword [esi]
push 1
mov ecx, esi
call dword [edx]
mov dword [esp + 0x10], edi
mov eax, dword [esp + 0x88]
mov ecx, dword [0x6b4ca0]
cmp ecx, eax
jne 0x48e399
push 1
call fcn.004e5d60
add esp, 4
mov dword [0x5598b8], edi
push 1
call fcn.004e5d60
mov al, byte [0x54d341]
add esp, 4
test al, al
jne 0x48e3bf
push str.stubbed_out:_DrawSync
call fcn.0046cb90
add esp, 4
call fcn.00430680
call fcn.0050df80
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x2c]
xor esi, esi
jmp 0x48dd87
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
mov ecx, dword [esp + 0x64]
mov dword fs:[0], ecx
add esp, 0x70
ret
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
mov esi, dword [esp + 0x28]
mov dword [eax], ecx
mov cl, byte [esp + 0x50]
mov dword [eax + 4], edx
mov byte [eax + 8], cl
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x48e41f
mov edx, dword [ecx]
push 1
call dword [edx]
push 1
call fcn.004e5d60
mov al, byte [0x54d341]
add esp, 4
test al, al
jne 0x48e43f
push str.stubbed_out:_DrawSync
call fcn.0046cb90
add esp, 4
call fcn.00430680
mov al, byte [0x54d341]
test al, al
jne 0x48e45a
push str.stubbed_out:_DrawSync
call fcn.0046cb90
add esp, 4
push 0x661100
call fcn.00479470
mov ecx, dword [esp + 0x78]
add esp, 4
mov eax, esi
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x70
ret
mov ecx, dword [esp + 0x84]
xor eax, eax
cmp byte [eax + ecx], 0x2e
je 0x48e49b
inc eax
cmp eax, 8
jl 0x48e485
mov esi, 1
jmp 0x48e411
mov byte [eax + ecx], 0
mov esi, 1
jmp 0x48e411