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

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x4d1377
push eax
mov eax, 0x356c
mov dword fs:[0], esp
call fcn.004be3a0
push ebx
push ebp
push esi
mov esi, ecx
push edi
lea ecx, [esp + 0x2fc]
call fcn.0046bef0
mov al, byte [esp + 0x13]
xor ebx, ebx
push ebx
lea ecx, [esp + 0x50]
mov dword [esp + 0x3588], ebx
mov byte [esp + 0x50], al
call fcn.00406ae1
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], ebx
mov cl, byte [esp + 0x13]
push ebx
mov byte [esp + 0x1c], cl
lea ecx, [esp + 0x1c]
mov byte [esp + 0x3588], 1
call fcn.00406ae1
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
mov dl, byte [esp + 0x13]
push ebx
lea ecx, [esp + 0x38]
mov byte [esp + 0x3588], 2
mov byte [esp + 0x38], dl
call fcn.00406ae1
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
mov edi, dword [esp + 0x358c]
mov byte [esp + 0x3584], 3
cmp edi, ebx
jne 0x48b2d9
push 0x4f8d94
push 0x501fc0
call fcn.00422030
mov eax, dword [esp + 0x4c]
add esp, 8
cmp eax, ebx
mov byte [esp + 0x3584], 2
je 0x48b25e
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x44], ebx
push 1
lea ecx, [esp + 0x38]
call fcn.00406ae1
mov eax, dword [esp + 0x28]
mov byte [esp + 0x3584], 1
cmp eax, ebx
je 0x48b286
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x28], ebx
push 1
lea ecx, [esp + 0x1c]
call fcn.00406ae1
mov eax, dword [esp + 0x5c]
mov byte [esp + 0x3584], bl
cmp eax, ebx
je 0x48b2ad
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x5c], ebx
push 1
lea ecx, [esp + 0x50]
call fcn.00406ae1
lea ecx, [esp + 0x2fc]
mov dword [esp + 0x3584], 0xffffffff
call fcn.0046bf70
mov eax, 0xc1000404
jmp 0x48caea
mov ecx, dword [esi + 4]
lea eax, [esp + 0xac]
push eax
call fcn.004481e0
mov eax, dword [eax + 4]
mov byte [esp + 0x3584], 4
cmp eax, ebx
jne 0x48b2fd
mov eax, 0x4d58e0
push eax
lea ecx, [esp + 0x50]
push 0x1392
push ecx
call fcn.004299b0
mov eax, dword [esp + 0xc8]
add esp, 0xc
cmp eax, ebx
mov byte [esp + 0x3584], 3
je 0x48b333
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0xbc], ebx
push 1
lea ecx, [esp + 0xb0]
call fcn.00406ae1
lea edx, [esp + 0x4c]
push ebx
push edx
push 0x80000002
lea ecx, [esp + 0x308]
call fcn.0046c0b0
test eax, eax
jne 0x48b418
mov eax, dword [esp + 0x50]
cmp eax, ebx
jne 0x48b36d
mov eax, 0x4d58e0
push eax
push 0x4f8d48
push 0x501fc0
call fcn.00422030
mov eax, dword [esp + 0x50]
add esp, 0xc
cmp eax, ebx
mov byte [esp + 0x3584], 2
je 0x48b39d
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x44], ebx
push 1
lea ecx, [esp + 0x38]
call fcn.00406ae1
mov eax, dword [esp + 0x28]
mov byte [esp + 0x3584], 1
cmp eax, ebx
je 0x48b3c5
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x28], ebx
push 1
lea ecx, [esp + 0x1c]
call fcn.00406ae1
mov eax, dword [esp + 0x5c]
mov byte [esp + 0x3584], bl
cmp eax, ebx
je 0x48b3ec
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x5c], ebx
push 1
lea ecx, [esp + 0x50]
call fcn.00406ae1
lea ecx, [esp + 0x2fc]
mov dword [esp + 0x3584], 0xffffffff
call fcn.0046bf70
mov eax, 0x80004005
jmp 0x48caea
lea ecx, [esp + 0x328]
call fcn.0046bef0
push ebx
push 1
push 0xce5
lea ecx, [esp + 0x308]
mov byte [esp + 0x3590], 5
call fcn.004a7bd0
push eax
lea ecx, [esp + 0x338]
call fcn.0046c850
mov esi, dword [0x4d52e8]
test eax, eax
jne 0x48b478
push 0x4f7070
push 0x1bfa
push 0x4f8cfc
lea eax, [esp + 0x918]
push 0x4ee5ec
push eax
call esi
add esp, 0x14
lea ecx, [esp + 0xc4]
call fcn.0046bef0
push ebx
push 1
push 0x1390
lea ecx, [esp + 0x308]
mov byte [esp + 0x3590], 6
call fcn.004a7bd0
push eax
lea ecx, [esp + 0xd4]
call fcn.0046c850
test eax, eax
jne 0x48b4d2
push 0x4f7070
push 0x1bfe
push 0x4f8cb8
lea ecx, [esp + 0x918]
push 0x4ee5ec
push ecx
call esi
add esp, 0x14
xor ebp, ebp
lea esi, [edi + 4]
mov dword [esp + 0x30], ebp
mov dword [esp + 0xa8], esi
mov ecx, dword [esi + 4]
cmp ecx, ebx
jne 0x48b4ed
xor eax, eax
jmp 0x48b4f5
mov eax, dword [esi + 8]
sub eax, ecx
sar eax, 2
cmp ebp, eax
jge 0x48c9d7
cmp ebp, ebx
jl 0x48b52e
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x48b52e
mov edx, dword [esi + 8]
sub edx, eax
sar edx, 2
cmp ebp, edx
jae 0x48b52e
mov ecx, esi
call fcn.00455260
cmp eax, ebp
ja 0x48b526
mov ecx, esi
call fcn.00436ec0
mov eax, dword [esi + 4]
mov ebp, dword [eax + ebp*4]
jmp 0x48b534
mov ebp, dword [pe_dos_header]
cmp byte [ebp + 0xa0], 0xff
jne 0x48b677
lea eax, [esp + 0x254]
mov ecx, ebp
push eax
call fcn.00454ad0
mov eax, dword [eax + 8]
xor ecx, ecx
cmp eax, ebx
mov eax, dword [esp + 0x264]
sete cl
cmp eax, ebx
mov edi, ecx
je 0x48b577
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x264], ebx
push 1
lea ecx, [esp + 0x258]
call fcn.00406ae1
cmp edi, ebx
je 0x48b5f8
lea edx, [esp + 0x29c]
mov ecx, ebp
push edx
call fcn.00453dd0
mov edi, eax
mov ecx, ebp
mov byte [esp + 0x3584], 7
call fcn.00454090
push eax
push edi
lea ecx, [esp + 0xcc]
call fcn.0046d600
mov eax, dword [esp + 0x2ac]
mov byte [esp + 0x3584], 6
cmp eax, ebx
je 0x48b5da
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x2ac], ebx
push 1
lea ecx, [esp + 0x2a0]
call fcn.00406ae1
mov eax, dword [esp + 0x30]
inc eax
mov dword [esp + 0x30], eax
mov ebp, eax
jmp 0x48b4e2
push ebx
mov ecx, ebp
sub esp, 0x18
mov eax, esp
mov dword [esp + 0x30], esp
push eax
call fcn.00453f40
lea ecx, [esp + 0x2e8]
mov byte [esp + 0x35a0], 8
push ecx
mov ecx, ebp
call fcn.00453dd0
push eax
lea ecx, [esp + 0xe4]
mov byte [esp + 0x35a4], 0xa
call fcn.0046d720
mov eax, dword [esp + 0x2dc]
mov byte [esp + 0x3584], 6
cmp eax, ebx
je 0x48b659
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x2dc], ebx
push 1
lea ecx, [esp + 0x2d0]
call fcn.00406ae1
mov eax, dword [esp + 0x30]
inc eax
mov dword [esp + 0x30], eax
mov ebp, eax
jmp 0x48b4e2
lea ecx, [esp + 0xf0]
call fcn.0046bef0
lea edx, [esp + 0x284]
mov ecx, ebp
push edx
mov byte [esp + 0x3588], 0xb
call fcn.00453dd0
push ebx
push 1
push eax
lea ecx, [esp + 0x334]
mov byte [esp + 0x3590], 0xc
call fcn.004a7bd0
push eax
lea ecx, [esp + 0x100]
call fcn.0046c4d0
test eax, eax
mov eax, dword [esp + 0x294]
mov byte [esp + 0x3584], 0xb
sete byte [esp + 0x13]
cmp eax, ebx
je 0x48b6e9
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x294], ebx
push 1
lea ecx, [esp + 0x288]
call fcn.00406ae1
cmp byte [esp + 0x13], bl
je 0x48b722
push 0x4f7070
push 0x1c21
push 0x4f8c68
lea eax, [esp + 0x2548]
push 0x4ee5ec
push eax
call dword [0x4d52e8]
add esp, 0x14
mov ecx, ebp
call fcn.00453f30
cmp eax, 4
ja case.default.0x48b732
jmp dword [eax*4 + 0x48cb08]
cmp dword [0x5021a4], ebx
jne 0x48b778
push 0x4ee65c
lea ecx, [esp + 0xd20]
push 0x4e92c0
push ecx
call dword [0x4d52e8]
add esp, 0xc
lea edx, [esp + 0xd1c]
mov ecx, 0x501fc0
push edx
push 0x556
push 0x4f0af8
call fcn.00421fb0
mov ecx, dword [0x5021a4]
lea eax, [esp + 0x3f8]
push 0x104
push eax
push 0xbf6
push ecx
call dword [0x4d52dc]
cmp eax, ebx
je 0x48b7ec
lea edi, [esp + 0x3f8]
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x18], ecx
push ecx
lea ecx, [esp + 0x20]
call fcn.00406a5c
test al, al
je 0x48b811
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov ecx, eax
lea esi, [esp + 0x3f8]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x20], eax
mov byte [ecx + eax], bl
jmp 0x48b811
push 0x4f7070
push 0x1c27
push 0x4f8c40
lea edx, [esp + 0x1d28]
push 0x4ee5ec
push edx
call dword [0x4d52e8]
add esp, 0x14
lea ecx, [esp + 0x3ac]
call fcn.0046bef0
push ebx
push 1
push 0xcee
lea ecx, [esp + 0xfc]
mov byte [esp + 0x3590], 0xd
call fcn.004a7bd0
push eax
lea ecx, [esp + 0x3bc]
call fcn.0046c850
mov ecx, ebp
xor edi, edi
call fcn.004545a0
test eax, eax
jle 0x48b913
push edi
mov ecx, ebp
call fcn.004545c0
mov esi, eax
mov al, byte [esp + 0x13]
push ebx
lea ecx, [esp + 0x150]
mov byte [esp + 0x150], al
call fcn.00406ae1
mov dword [esp + 0x15c], ebx
mov dword [esp + 0x160], ebx
mov ecx, esi
mov byte [esp + 0x3584], 0xe
call fcn.004547e0
push eax
lea ecx, [esp + 0x150]
push 0x4f13bc
push ecx
call fcn.0042fd80
add esp, 0xc
mov ecx, esi
push ebx
sub esp, 0x18
mov edx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.004547f0
lea eax, [esp + 0x168]
lea ecx, [esp + 0x3c8]
push eax
call fcn.0046d720
mov eax, dword [esp + 0x15c]
mov byte [esp + 0x3584], 0xd
cmp eax, ebx
je 0x48b8f5
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x15c], ebx
push 1
lea ecx, [esp + 0x150]
call fcn.00406ae1
mov ecx, ebp
inc edi
call fcn.004545a0
cmp edi, eax
jl 0x48b857
mov ecx, ebp
call fcn.00453c50
push eax
lea ecx, [esp + 0x38]
push 0x4f13bc
push ecx
call fcn.0042fd80
add esp, 0xc
lea edx, [esp + 0x224]
mov ecx, ebp
mov esi, 1
push edx
call fcn.00453dd0
lea ecx, [esp + 0x88]
push ebx
push ecx
push eax
lea ecx, [esp + 0xd0]
mov byte [esp + 0x3590], 0xf
call fcn.0046ca40
mov eax, dword [esp + 0x234]
mov byte [esp + 0x3584], 0xd
cmp eax, ebx
je 0x48b982
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x234], ebx
push 1
lea ecx, [esp + 0x228]
call fcn.00406ae1
lea ecx, [esp + 0xc4]
call fcn.0046ca30
test eax, eax
jne 0x48b9d7
mov ecx, ebp
xor edi, edi
call fcn.004545a0
test eax, eax
jle 0x48b9d7
push edi
mov ecx, ebp
call fcn.004545c0
mov ecx, eax
call fcn.004547e0
cmp eax, dword [esp + 0x88]
jne 0x48b9c7
xor esi, esi
mov ecx, ebp
inc edi
call fcn.004545a0
cmp edi, eax
jl 0x48b9ad
cmp esi, ebx
je 0x48ba36
lea edx, [esp + 0x2e4]
mov ecx, ebp
push edx
call fcn.00453dd0
mov edi, eax
mov ecx, ebp
mov byte [esp + 0x3584], 0x10
call fcn.00454090
push eax
push edi
lea ecx, [esp + 0xcc]
call fcn.0046d600
mov eax, dword [esp + 0x2f4]
mov byte [esp + 0x3584], 0xd
cmp eax, ebx
je 0x48ba28
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x2f4], ebx
push 1
lea ecx, [esp + 0x2e8]
call fcn.00406ae1
mov byte [esp + 0x3584], 0xb
lea ecx, [esp + 0x3ac]
jmp 0x48c7c4
mov al, byte [esp + 0x13]
push ebx
lea ecx, [esp + 0x6c]
mov byte [esp + 0x6c], al
call fcn.00406ae1
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
mov eax, dword [0x5021a4]
mov byte [esp + 0x3584], 0x11
cmp eax, ebx
jne 0x48baac
push 0x4ee65c
lea ecx, [esp + 0x1920]
push 0x4e92c0
push ecx
call dword [0x4d52e8]
add esp, 0xc
lea edx, [esp + 0x191c]
mov ecx, 0x501fc0
push edx
push 0x556
push 0x4f0af8
call fcn.00421fb0
mov ecx, dword [0x5021a4]
lea eax, [esp + 0x600]
push 0x104
push eax
push 0xbf7
push ecx
call dword [0x4d52dc]
cmp eax, ebx
je 0x48bb20
lea edi, [esp + 0x600]
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x18], ecx
push ecx
lea ecx, [esp + 0x20]
call fcn.00406a5c
test al, al
je 0x48bb45
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov ecx, eax
lea esi, [esp + 0x600]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x20], eax
mov byte [ecx + eax], bl
jmp 0x48bb45
push 0x4f7070
push 0x1c55
push str.ild_PusiPo8tOIDm_
lea edx, [esp + 0x2d68]
push 0x4ee5ec
push edx
call dword [0x4d52e8]
add esp, 0x14
mov ecx, ebp
call fcn.00453c40
push eax
lea eax, [esp + 0x6c]
push 0x4f13bc
push eax
call fcn.0042fd80
add esp, 0xc
lea edx, [esp + 0x68]
push ebx
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.0040908e
push 0xce6
lea ecx, [esp + 0x110]
call fcn.0046d840
mov ecx, ebp
call fcn.00453db0
push eax
lea eax, [esp + 0x6c]
push 0x4f13bc
push eax
call fcn.0042fd80
add esp, 0xc
lea edx, [esp + 0x68]
push ebx
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.0040908e
push 0xce9
lea ecx, [esp + 0x110]
call fcn.0046d840
mov ecx, ebp
call fcn.00453dc0
push eax
lea eax, [esp + 0x6c]
push 0x4f13bc
push eax
call fcn.0042fd80
add esp, 0xc
lea edx, [esp + 0x68]
push ebx
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.0040908e
push 0xcea
lea ecx, [esp + 0x110]
call fcn.0046d840
mov ecx, ebp
call fcn.00453f20
push eax
lea eax, [esp + 0x6c]
push 0x4f13bc
push eax
call fcn.0042fd80
add esp, 0xc
lea edx, [esp + 0x68]
push ebx
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.0040908e
push 0xceb
lea ecx, [esp + 0x110]
call fcn.0046d840
mov ecx, ebp
call fcn.00454ac0
push eax
lea eax, [esp + 0x6c]
push 0x4f13bc
push eax
call fcn.0042fd80
add esp, 0xc
push ebx
sub esp, 0x18
lea edx, [esp + 0x84]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.0040908e
push 0xcef
lea ecx, [esp + 0x110]
call fcn.0046d840
mov ecx, ebp
call fcn.00453c50
push eax
lea eax, [esp + 0x38]
push 0x4f13bc
push eax
call fcn.0042fd80
add esp, 0xc
lea ecx, [esp + 0x1dc]
push ecx
mov ecx, ebp
call fcn.00453dd0
lea edx, [esp + 0x64]
push ebx
push edx
push eax
lea ecx, [esp + 0xd0]
mov byte [esp + 0x3590], 0x12
call fcn.0046ca40
mov eax, dword [esp + 0x1ec]
mov byte [esp + 0x3584], 0x11
cmp eax, ebx
je 0x48bcea
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x1ec], ebx
push 1
lea ecx, [esp + 0x1e0]
call fcn.00406ae1
lea ecx, [esp + 0xc4]
call fcn.0046ca30
test eax, eax
jne 0x48bd22
mov ecx, ebp
call fcn.00453dc0
cmp dword [esp + 0x64], eax
jl 0x48bd22
mov ecx, ebp
call fcn.00453db0
cmp dword [esp + 0x64], eax
jle 0x48bd81
lea eax, [esp + 0x2b4]
mov ecx, ebp
push eax
call fcn.00453dd0
mov edi, eax
mov ecx, ebp
mov byte [esp + 0x3584], 0x13
call fcn.00454090
push eax
push edi
lea ecx, [esp + 0xcc]
call fcn.0046d600
mov eax, dword [esp + 0x2c4]
mov byte [esp + 0x3584], 0x11
cmp eax, ebx
je 0x48bd73
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x2c4], ebx
push 1
lea ecx, [esp + 0x2b8]
call fcn.00406ae1
mov eax, dword [esp + 0x78]
mov byte [esp + 0x3584], 0xb
cmp eax, ebx
je 0x48bd9e
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x78], ebx
push 1
lea ecx, [esp + 0x6c]
call fcn.00406ae1
jmp case.default.0x48b732
cmp dword [0x5021a4], ebx
jne 0x48bded
push 0x4ee65c
lea ecx, [esp + 0x1520]
push 0x4e92c0
push ecx
call dword [0x4d52e8]
add esp, 0xc
lea edx, [esp + 0x151c]
mov ecx, 0x501fc0
push edx
push 0x556
push 0x4f0af8
call fcn.00421fb0
mov ecx, dword [0x5021a4]
lea eax, [esp + 0x808]
push 0x104
push eax
push 0xbf8
push ecx
call dword [0x4d52dc]
cmp eax, ebx
je 0x48be61
lea edi, [esp + 0x808]
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x18], ecx
push ecx
lea ecx, [esp + 0x20]
call fcn.00406a5c
test al, al
je 0x48be86
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov ecx, eax
lea esi, [esp + 0x808]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x20], eax
mov byte [ecx + eax], bl
jmp 0x48be86
push 0x4f7070
push 0x1c7e
push 0x4f8bf0
lea edx, [esp + 0x2138]
push 0x4ee5ec
push edx
call dword [0x4d52e8]
add esp, 0x14
lea eax, [esp + 0x1f4]
mov ecx, ebp
push eax
call fcn.00454ad0
mov ecx, dword [0x4d58e4]
mov byte [esp + 0x3584], 0x14
push ecx
push ebx
push eax
lea ecx, [esp + 0x40]
call fcn.0040b3c3
mov eax, dword [esp + 0x204]
mov byte [esp + 0x3584], 0xb
cmp eax, ebx
je 0x48bed2
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x204], ebx
push 1
lea ecx, [esp + 0x1f8]
call fcn.00406ae1
mov dl, byte [esp + 0x13]
push ebx
lea ecx, [esp + 0x180]
mov byte [esp + 0x180], dl
call fcn.00406ae1
mov dword [esp + 0x18c], ebx
mov dword [esp + 0x190], ebx
push ebx
mov byte [esp + 0x3588], 0x15
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x30], esp
push 0x501a04
call fcn.00405d32
lea eax, [esp + 0x228]
mov ecx, ebp
push eax
mov byte [esp + 0x35a4], 0x16
call fcn.00453dd0
lea ecx, [esp + 0x198]
mov byte [esp + 0x35a0], 0x18
push ecx
push eax
lea ecx, [esp + 0xe8]
call fcn.0046cba0
mov eax, dword [esp + 0x21c]
mov byte [esp + 0x3584], 0x15
cmp eax, ebx
je 0x48bf79
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x21c], ebx
push 1
lea ecx, [esp + 0x210]
call fcn.00406ae1
lea ecx, [esp + 0xc4]
call fcn.0046ca30
test eax, eax
je 0x48c02f
push ebx
mov ecx, ebp
sub esp, 0x18
mov edx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.00453f40
lea eax, [esp + 0x1c8]
mov ecx, ebp
push eax
mov byte [esp + 0x35a4], 0x19
call fcn.00453dd0
push eax
lea ecx, [esp + 0xe4]
mov byte [esp + 0x35a4], 0x1b
call fcn.0046d720
mov eax, dword [esp + 0x1bc]
cmp eax, ebx
je 0x48bff4
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x1bc], ebx
mov ecx, dword [esp + 0x1b0]
cmp ecx, ebx
je 0x48c01a
mov al, byte [ecx - 1]
dec ecx
cmp al, bl
je 0x48c011
cmp al, 0xff
je 0x48c011
dec al
mov byte [ecx], al
jmp 0x48c01a
push ecx
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x1b0], ebx
mov dword [esp + 0x1b4], ebx
mov dword [esp + 0x1b8], ebx
mov eax, dword [esp + 0x18c]
mov byte [esp + 0x3584], 0xb
cmp eax, ebx
je 0x48c052
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x18c], ebx
push 1
lea ecx, [esp + 0x180]
call fcn.00406ae1
jmp case.default.0x48b732
cmp dword [0x5021a4], ebx
jne 0x48c0a4
push 0x4ee65c
lea ecx, [esp + 0x1120]
push 0x4e92c0
push ecx
call dword [0x4d52e8]
add esp, 0xc
lea edx, [esp + 0x111c]
mov ecx, 0x501fc0
push edx
push 0x556
push 0x4f0af8
call fcn.00421fb0
mov ecx, dword [0x5021a4]
lea eax, [esp + 0x4fc]
push 0x104
push eax
push 0xc0b
push ecx
call dword [0x4d52dc]
cmp eax, ebx
je 0x48c118
lea edi, [esp + 0x4fc]
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x18], ecx
push ecx
lea ecx, [esp + 0x20]
call fcn.00406a5c
test al, al
je 0x48c13d
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov ecx, eax
lea esi, [esp + 0x4fc]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x20], eax
mov byte [ecx + eax], bl
jmp 0x48c13d
push 0x4f7070
push 0x1c94
push 0x4f8bc4
lea edx, [esp + 0x2958]
push 0x4ee5ec
push edx
call dword [0x4d52e8]
add esp, 0x14
lea ecx, [esp + 0x354]
call fcn.0046bef0
push ebx
push 1
push 0xcf0
lea ecx, [esp + 0xfc]
mov byte [esp + 0x3590], 0x1c
call fcn.004a7bd0
push eax
lea ecx, [esp + 0x364]
call fcn.0046c850
mov ecx, ebp
xor edi, edi
call fcn.004545a0
test eax, eax
jle 0x48c2e3
push edi
mov ecx, ebp
call fcn.004545c0
mov esi, eax
mov al, byte [esp + 0x13]
push ebx
lea ecx, [esp + 0x94]
mov byte [esp + 0x94], al
call fcn.00406ae1
mov dword [esp + 0xa0], ebx
mov dword [esp + 0xa4], ebx
mov ecx, esi
mov byte [esp + 0x3584], 0x1d
call fcn.004547e0
push eax
lea ecx, [esp + 0x94]
push 0x4f13bc
push ecx
call fcn.0042fd80
add esp, 0xc
lea edx, [esp + 0x90]
push ebx
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.0040908e
lea eax, [esp + 0x1e0]
mov ecx, esi
push eax
mov byte [esp + 0x35a4], 0x1e
call fcn.004547f0
push eax
lea ecx, [esp + 0x374]
mov byte [esp + 0x35a4], 0x20
call fcn.0046d720
mov eax, dword [esp + 0x1d4]
cmp eax, ebx
je 0x48c236
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x1d4], ebx
mov eax, dword [esp + 0x1c8]
cmp eax, ebx
je 0x48c25e
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x48c255
cmp al, 0xff
je 0x48c255
dec al
mov byte [ecx], al
jmp 0x48c25e
push ecx
call fcn.004bcb64
add esp, 4
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x1c8], ebx
cmp eax, ebx
mov dword [esp + 0x1cc], ebx
mov dword [esp + 0x1d0], ebx
mov byte [esp + 0x3584], 0x1c
je 0x48c296
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0xa0], ebx
mov eax, dword [esp + 0x94]
cmp eax, ebx
je 0x48c2be
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x48c2b5
cmp al, 0xff
je 0x48c2b5
dec al
mov byte [ecx], al
jmp 0x48c2be
push ecx
call fcn.004bcb64
add esp, 4
mov ecx, ebp
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], ebx
mov dword [esp + 0x9c], ebx
inc edi
call fcn.004545a0
cmp edi, eax
jl 0x48c183
mov ecx, ebp
call fcn.00453c50
push eax
lea ecx, [esp + 0x38]
push 0x4f13bc
push ecx
call fcn.0042fd80
add esp, 0xc
mov ecx, ebp
push ebx
sub esp, 0x18
mov edx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.00454c20
push 0xcf1
lea ecx, [esp + 0x110]
call fcn.0046d840
push ebx
mov ecx, ebp
sub esp, 0x18
mov eax, esp
mov dword [esp + 0x30], esp
push eax
call fcn.00454d70
push 0xcf2
lea ecx, [esp + 0x110]
call fcn.0046d840
lea ecx, [esp + 0x23c]
mov edi, 1
push ecx
mov ecx, ebp
call fcn.00453dd0
lea edx, [esp + 0x8c]
push ebx
push edx
push eax
lea ecx, [esp + 0xd0]
mov byte [esp + 0x3590], 0x21
call fcn.0046ca40
mov eax, dword [esp + 0x24c]
mov byte [esp + 0x3584], 0x1c
cmp eax, ebx
je 0x48c398
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x24c], ebx
push 1
lea ecx, [esp + 0x240]
call fcn.00406ae1
lea ecx, [esp + 0xc4]
call fcn.0046ca30
test eax, eax
jne 0x48c3f1
mov ecx, ebp
xor esi, esi
call fcn.004545a0
test eax, eax
jle 0x48c3f1
push esi
mov ecx, ebp
call fcn.004545c0
mov ecx, eax
call fcn.004547e0
cmp eax, dword [esp + 0x8c]
jne 0x48c3dd
xor edi, edi
mov ecx, ebp
inc esi
call fcn.004545a0
cmp esi, eax
jl 0x48c3c3
cmp edi, ebx
je 0x48c477
lea eax, [esp + 0x194]
mov ecx, ebp
push eax
call fcn.00453dd0
mov esi, eax
mov ecx, ebp
mov byte [esp + 0x3584], 0x22
call fcn.00454090
push eax
push esi
lea ecx, [esp + 0xcc]
call fcn.0046d600
mov eax, dword [esp + 0x1a4]
cmp eax, ebx
je 0x48c43a
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x1a4], ebx
mov eax, dword [esp + 0x198]
cmp eax, ebx
je 0x48c462
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x48c459
cmp al, 0xff
je 0x48c459
dec al
mov byte [ecx], al
jmp 0x48c462
push ecx
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x198], ebx
mov dword [esp + 0x19c], ebx
mov dword [esp + 0x1a0], ebx
mov byte [esp + 0x3584], 0xb
lea ecx, [esp + 0x354]
jmp 0x48c7c4
cmp dword [0x5021a4], ebx
jne 0x48c4ca
push 0x4ee65c
lea ecx, [esp + 0x910]
push 0x4e92c0
push ecx
call dword [0x4d52e8]
add esp, 0xc
lea edx, [esp + 0x90c]
mov ecx, 0x501fc0
push edx
push 0x556
push 0x4f0af8
call fcn.00421fb0
mov ecx, dword [0x5021a4]
lea eax, [esp + 0x704]
push 0x104
push eax
push 0x1cc3
push ecx
call dword [0x4d52dc]
cmp eax, ebx
je 0x48c53e
lea edi, [esp + 0x704]
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x18], ecx
push ecx
lea ecx, [esp + 0x20]
call fcn.00406a5c
test al, al
je 0x48c563
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov ecx, eax
lea esi, [esp + 0x704]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x20], eax
mov byte [ecx + eax], bl
jmp 0x48c563
push 0x4f7070
push 0x1cc4
push 0x4f8b98
lea edx, [esp + 0x3178]
push 0x4ee5ec
push edx
call dword [0x4d52e8]
add esp, 0x14
lea ecx, [esp + 0x380]
call fcn.0046bef0
push ebx
push 1
push 0xcee
lea ecx, [esp + 0xfc]
mov byte [esp + 0x3590], 0x23
call fcn.004a7bd0
push eax
lea ecx, [esp + 0x390]
call fcn.0046c850
mov ecx, ebp
xor edi, edi
call fcn.004545a0
test eax, eax
jle 0x48c665
push edi
mov ecx, ebp
call fcn.004545c0
mov esi, eax
mov al, byte [esp + 0x13]
push ebx
lea ecx, [esp + 0x168]
mov byte [esp + 0x168], al
call fcn.00406ae1
mov dword [esp + 0x174], ebx
mov dword [esp + 0x178], ebx
mov ecx, esi
mov byte [esp + 0x3584], 0x24
call fcn.004547e0
push eax
lea ecx, [esp + 0x168]
push 0x4f13bc
push ecx
call fcn.0042fd80
add esp, 0xc
mov ecx, esi
push ebx
sub esp, 0x18
mov edx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.004547f0
lea eax, [esp + 0x180]
lea ecx, [esp + 0x39c]
push eax
call fcn.0046d720
mov eax, dword [esp + 0x174]
mov byte [esp + 0x3584], 0x23
cmp eax, ebx
je 0x48c647
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x174], ebx
push 1
lea ecx, [esp + 0x168]
call fcn.00406ae1
mov ecx, ebp
inc edi
call fcn.004545a0
cmp edi, eax
jl 0x48c5a9
mov ecx, ebp
call fcn.00453c50
push eax
lea ecx, [esp + 0x38]
push 0x4f13bc
push ecx
call fcn.0042fd80
add esp, 0xc
lea edx, [esp + 0xac]
mov ecx, ebp
mov esi, 1
push edx
call fcn.00453dd0
lea ecx, [esp + 0x80]
push ebx
push ecx
push eax
lea ecx, [esp + 0xd0]
mov byte [esp + 0x3590], 0x25
call fcn.0046ca40
mov eax, dword [esp + 0xbc]
mov byte [esp + 0x3584], 0x23
cmp eax, ebx
je 0x48c6d4
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0xbc], ebx
mov ecx, dword [esp + 0xb0]
cmp ecx, ebx
je 0x48c6fa
mov al, byte [ecx - 1]
dec ecx
cmp al, bl
je 0x48c6f1
cmp al, 0xff
je 0x48c6f1
dec al
mov byte [ecx], al
jmp 0x48c6fa
push ecx
call fcn.004bcb64
add esp, 4
lea ecx, [esp + 0xc4]
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xb4], ebx
mov dword [esp + 0xb8], ebx
call fcn.0046ca30
test eax, eax
jne 0x48c756
mov ecx, ebp
xor edi, edi
call fcn.004545a0
test eax, eax
jle 0x48c756
push edi
mov ecx, ebp
call fcn.004545c0
mov ecx, eax
call fcn.004547e0
cmp eax, dword [esp + 0x80]
jne 0x48c746
xor esi, esi
mov ecx, ebp
inc edi
call fcn.004545a0
cmp edi, eax
jl 0x48c72c
cmp esi, ebx
je 0x48c7b5
lea edx, [esp + 0x26c]
mov ecx, ebp
push edx
call fcn.00453dd0
mov edi, eax
mov ecx, ebp
mov byte [esp + 0x3584], 0x26
call fcn.00454090
push eax
push edi
lea ecx, [esp + 0xcc]
call fcn.0046d600
mov eax, dword [esp + 0x27c]
mov byte [esp + 0x3584], 0x23
cmp eax, ebx
je 0x48c7a7
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x27c], ebx
push 1
lea ecx, [esp + 0x270]
call fcn.00406ae1
mov byte [esp + 0x3584], 0xb
lea ecx, [esp + 0x380]
call fcn.0046bf70
push ebx
lea eax, [esp + 0x1c]
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x30], esp
push eax
call fcn.0040908e
push 0xcec
lea ecx, [esp + 0x110]
call fcn.0046d840
push ebx
lea edx, [esp + 0x38]
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.0040908e
push 0xce7
lea ecx, [esp + 0x110]
call fcn.0046d840
lea eax, [esp + 0x134]
mov ecx, ebp
push eax
call fcn.00453c60
mov eax, dword [esp + 0x13c]
mov byte [esp + 0x3584], 0x27
cmp eax, ebx
je 0x48c85d
push ebx
lea edx, [esp + 0x138]
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.0040908e
push 0xce8
lea ecx, [esp + 0x110]
call fcn.0046d840
lea eax, [esp + 0x11c]
mov ecx, ebp
push eax
call fcn.00454ec0
mov eax, dword [esp + 0x124]
mov byte [esp + 0x3584], 0x28
cmp eax, ebx
je 0x48c8a7
push ebx
lea edx, [esp + 0x120]
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.0040908e
push 0xcf3
lea ecx, [esp + 0x110]
call fcn.0046d840
mov al, byte [ebp + 0xa0]
lea ecx, [esp + 0x3d8]
mov byte [esp + 0x84], al
push 0xa
mov edx, dword [esp + 0x88]
push ecx
and edx, 0xff
push edx
call fcn.004c8363
add esp, 0xc
lea eax, [esp + 0x3d8]
push ebx
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x30], esp
push eax
call fcn.00405d32
push 0xcf4
lea ecx, [esp + 0x110]
call fcn.0046d840
mov eax, dword [esp + 0x12c]
cmp eax, ebx
je 0x48c917
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x12c], ebx
mov eax, dword [esp + 0x120]
cmp eax, ebx
je 0x48c93f
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x48c936
cmp al, 0xff
je 0x48c936
dec al
mov byte [ecx], al
jmp 0x48c93f
push ecx
call fcn.004bcb64
add esp, 4
mov eax, dword [esp + 0x144]
mov dword [esp + 0x120], ebx
cmp eax, ebx
mov dword [esp + 0x124], ebx
mov dword [esp + 0x128], ebx
je 0x48c96f
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x144], ebx
mov eax, dword [esp + 0x138]
cmp eax, ebx
je 0x48c997
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x48c98e
cmp al, 0xff
je 0x48c98e
dec al
mov byte [ecx], al
jmp 0x48c997
push ecx
call fcn.004bcb64
add esp, 4
lea ecx, [esp + 0xf0]
mov dword [esp + 0x138], ebx
mov dword [esp + 0x13c], ebx
mov dword [esp + 0x140], ebx
mov byte [esp + 0x3584], 6
call fcn.0046bf70
mov eax, dword [esp + 0x30]
mov esi, dword [esp + 0xa8]
inc eax
mov dword [esp + 0x30], eax
mov ebp, eax
jmp 0x48b4e2
lea ecx, [esp + 0xc4]
mov byte [esp + 0x3584], 5
call fcn.0046bf70
lea ecx, [esp + 0x328]
mov byte [esp + 0x3584], 3
call fcn.0046bf70
mov eax, dword [esp + 0x44]
cmp eax, ebx
je 0x48ca14
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x44], ebx
mov eax, dword [esp + 0x38]
cmp eax, ebx
je 0x48ca39
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x48ca30
cmp al, 0xff
je 0x48ca30
dec al
mov byte [ecx], al
jmp 0x48ca39
push ecx
call fcn.004bcb64
add esp, 4
mov eax, dword [esp + 0x28]
mov dword [esp + 0x38], ebx
cmp eax, ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
je 0x48ca5a
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x28], ebx
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x48ca7f
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x48ca76
cmp al, 0xff
je 0x48ca76
dec al
mov byte [ecx], al
jmp 0x48ca7f
push ecx
call fcn.004bcb64
add esp, 4
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x1c], ebx
cmp eax, ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
je 0x48caa0
push eax
call fcn.004bcb64
add esp, 4
mov dword [esp + 0x5c], ebx
mov eax, dword [esp + 0x50]
cmp eax, ebx
je 0x48cac5
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x48cabc
cmp al, 0xff
je 0x48cabc
dec al
mov byte [ecx], al
jmp 0x48cac5
push ecx
call fcn.004bcb64
add esp, 4
lea ecx, [esp + 0x2fc]
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x3584], 0xffffffff
call fcn.0046bf70
xor eax, eax
mov ecx, dword [esp + 0x357c]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x3578
ret 8