Function at 0x4463f0
Capabilities:
Contain obfuscated stackstrings
Encode data using base64
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x49bdee
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2c8
mov al, byte [esp + 0x23]
push ebx
push ebp
push esi
push edi
xor edi, edi
push edi
lea ecx, [esp + 0x48]
mov byte [esp + 0x48], al
call fcn.00401bb0
mov cl, byte [esp + 0x33]
push edi
mov byte [esp + 0x24], cl
lea ecx, [esp + 0x24]
mov dword [esp + 0x2e4], edi
call fcn.00401bb0
push edi
push edi
push ecx
mov byte [esp + 0x2ec], 1
mov ecx, esp
mov dword [esp + 0x28], esp
push 6
push 0x4aeeb4
mov dword [esp + 0x70], edi
mov dword [esp + 0x74], edi
mov dword [esp + 0x68], edi
mov dword [esp + 0x6c], edi
call fcn.0046ebc0
push ecx
mov byte [esp + 0x2f0], 2
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x4aebe0
call fcn.0046ebc0
mov ecx, 0x4b6448
mov byte [esp + 0x2f0], 1
call fcn.00472d90
xor ebp, ebp
push 0x4b63c8
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 5
push 0x4aeeac
call fcn.0046ebc0
mov ecx, dword [0x4b63dc]
call fcn.004104a0
cmp ax, 1
jl 0x4473d9
mov ecx, dword [0x4b63cc]
call fcn.0046efe0
cmp ax, 5
jl 0x4473d9
mov ecx, dword [0x4b63cc]
push 3
mov esi, ecx
call fcn.0046ee40
mov bl, al
push 4
and ebx, 0xff
mov ecx, esi
shl ebx, 8
call fcn.0046ee40
and eax, 0xff
mov dword [esp + 0xd0], edi
add eax, ebx
lea ecx, [esp + 0xb0]
mov dword [esp + 0xcc], eax
fild qword [esp + 0xcc]
fmul qword [0x4a0220]
fsub qword [0x4a0218]
fstp qword [esp + 0xa4]
mov edx, dword [esp + 0xa8]
mov eax, dword [esp + 0xa4]
push edx
push eax
push str._.1f
push ecx
call fcn.0048dfde
add esp, 0xc
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x4aeea4
call fcn.0046ebc0
lea edx, [esp + 0x18c]
push edx
call fcn.00470800
add esp, 8
mov ecx, dword [0x4a0148]
mov byte [esp + 0x2e0], 4
push ecx
push edi
push eax
lea ecx, [esp + 0x50]
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x18c]
mov byte [esp + 0x2e4], 1
call fcn.00401bb0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x4aee9c
call fcn.0046ebc0
lea edx, [esp + 0x2bc]
push edx
call fcn.00470800
add esp, 8
push eax
push 0x4ae470
push ecx
mov byte [esp + 0x2ec], 5
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x4aee94
call fcn.0046ebc0
lea eax, [esp + 0x1c4]
push eax
call fcn.00470800
add esp, 8
lea ecx, [esp + 0xb8]
push eax
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
mov byte [esp + 0x2f4], 6
push 6
push 0x4aee8c
call fcn.0046ebc0
lea edx, [esp + 0x24c]
push edx
call fcn.00470800
add esp, 8
push eax
lea eax, [esp + 0x2dc]
push eax
mov byte [esp + 0x2f8], 7
call fcn.0044b450
add esp, 0xc
lea ecx, [esp + 0x2b4]
push eax
push ecx
mov byte [esp + 0x2f4], 8
call fcn.0044b320
add esp, 0xc
lea edx, [esp + 0x290]
mov bl, 9
push eax
push edx
mov byte [esp + 0x2f0], bl
call fcn.0044b450
add esp, 0xc
push eax
lea eax, [esp + 0x270]
push eax
mov byte [esp + 0x2ec], 0xa
call fcn.0044b320
add esp, 0xc
mov ecx, dword [0x4a0148]
mov byte [esp + 0x2e0], 0xb
push ecx
push edi
push eax
lea ecx, [esp + 0x2c]
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x26c]
mov byte [esp + 0x2e4], 0xa
call fcn.00401bb0
push 1
lea ecx, [esp + 0x28c]
mov byte [esp + 0x2e4], bl
call fcn.00401bb0
push 1
lea ecx, [esp + 0x2ac]
mov byte [esp + 0x2e4], 8
call fcn.00401bb0
push 1
lea ecx, [esp + 0x2cc]
mov byte [esp + 0x2e4], 7
call fcn.00401bb0
push 1
lea ecx, [esp + 0x23c]
mov byte [esp + 0x2e4], 6
call fcn.00401bb0
push 1
lea ecx, [esp + 0x1bc]
mov byte [esp + 0x2e4], 5
call fcn.00401bb0
push 1
lea ecx, [esp + 0x2bc]
mov byte [esp + 0x2e4], 1
call fcn.00401bb0
push edi
push 1
sub esp, 0x10
lea edx, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x2c], esp
push edx
call fcn.0040a690
mov byte [esp + 0x2f8], 0xc
sub esp, 0x10
lea eax, [esp + 0x48]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
call fcn.0040a690
mov ecx, 0x4b6448
mov byte [esp + 0x308], 1
call fcn.00472ce0
fld qword [esp + 0xa4]
fcomp qword [0x4a0210]
fnstsw ax
test ah, 1
jne 0x447313
fld qword [esp + 0xa4]
fcomp qword [0x4a0208]
fnstsw ax
test ah, 0x41
je 0x447313
push edi
push edi
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x4aeeb4
call fcn.0046ebc0
push ecx
mov byte [esp + 0x2f0], 0x10
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x4aebe0
call fcn.0046ebc0
mov ecx, 0x4b6448
mov byte [esp + 0x2f0], 1
call fcn.00472d90
push 0x4b63c8
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 5
push 0x4aeeac
call fcn.0046ebc0
mov ecx, dword [0x4b63dc]
call fcn.004104a0
cmp ax, 1
jl 0x4476e4
mov ecx, dword [0x4b63cc]
call fcn.0046efe0
cmp ax, 5
jl 0x4476e4
mov ecx, dword [0x4b63cc]
push 3
mov esi, ecx
call fcn.0046ee40
mov bl, al
push 4
and ebx, 0xff
mov ecx, esi
shl ebx, 8
call fcn.0046ee40
and eax, 0xff
mov dword [esp + 0xc8], edi
add eax, ebx
mov dword [esp + 0xc4], eax
lea eax, [esp + 0xb0]
fild qword [esp + 0xc4]
fmul qword [0x4a0220]
fsub qword [0x4a0218]
fstp qword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
push ecx
push edx
push str._.1f
push eax
call fcn.0048dfde
add esp, 0x10
cmp bp, di
je 0x4468c2
cmp bp, 1
je 0x446c9c
jmp 0x4467fe
fld qword [esp + 0x14]
fcomp qword [esp + 0x5c]
fnstsw ax
test ah, 1
je 0x4468e1
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x60], edx
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x5c]
push eax
push ecx
lea edx, [esp + 0x17c]
push str._.1f
push edx
call fcn.0048dfde
add esp, 0xc
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x4aee84
call fcn.0046ebc0
lea eax, [esp + 0x1dc]
push eax
call fcn.00470800
add esp, 8
mov ecx, dword [0x4a0148]
mov byte [esp + 0x2e0], 0x12
push ecx
push edi
push eax
lea ecx, [esp + 0x50]
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x1dc]
mov byte [esp + 0x2e4], 1
call fcn.00401bb0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x4aee7c
call fcn.0046ebc0
lea edx, [esp + 0x168]
push edx
call fcn.00470800
add esp, 8
push eax
push 0x4ae470
push ecx
mov byte [esp + 0x2ec], 0x13
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x4aee94
call fcn.0046ebc0
lea eax, [esp + 0x254]
push eax
call fcn.00470800
add esp, 8
lea ecx, [esp + 0x17c]
push eax
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push 6
push 0x4aee74
mov byte [esp + 0x2fc], 0x14
call fcn.0046ebc0
lea edx, [esp + 0x23c]
push edx
call fcn.00470800
add esp, 8
push eax
push 0x4ae470
push ecx
mov byte [esp + 0x2fc], 0x15
mov ecx, esp
mov dword [esp + 0x30], esp
push 6
push 0x4aee94
call fcn.0046ebc0
lea eax, [esp + 0x224]
push eax
call fcn.00470800
add esp, 8
lea ecx, [esp + 0xc8]
push eax
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x4aee8c
mov byte [esp + 0x30c], 0x16
call fcn.0046ebc0
lea edx, [esp + 0x20c]
push edx
call fcn.00470800
add esp, 8
push eax
lea eax, [esp + 0x1ec]
push eax
mov byte [esp + 0x308], 0x17
call fcn.0044b450
add esp, 0xc
lea ecx, [esp + 0x1c4]
push eax
push ecx
mov byte [esp + 0x304], 0x18
call fcn.0044b320
add esp, 0xc
lea edx, [esp + 0x1b0]
push eax
push edx
mov byte [esp + 0x300], 0x19
call fcn.0044b450
add esp, 0xc
push eax
lea eax, [esp + 0x290]
push eax
mov byte [esp + 0x2fc], 0x1a
call fcn.0044b320
add esp, 0xc
lea ecx, [esp + 0x228]
mov bl, 0x1b
push eax
push ecx
mov byte [esp + 0x2f8], bl
call fcn.0044b450
add esp, 0xc
lea edx, [esp + 0x2a4]
push eax
push edx
mov byte [esp + 0x2f4], 0x1c
call fcn.0044b320
add esp, 0xc
push eax
lea eax, [esp + 0x204]
push eax
mov byte [esp + 0x2f0], 0x1d
call fcn.0044b450
add esp, 0xc
lea ecx, [esp + 0x25c]
push eax
push ecx
mov byte [esp + 0x2ec], 0x1e
call fcn.0044b320
add esp, 0xc
mov edx, dword [0x4a0148]
mov byte [esp + 0x2e0], 0x1f
push edx
push edi
push eax
lea ecx, [esp + 0x2c]
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x25c]
mov byte [esp + 0x2e4], 0x1e
call fcn.00401bb0
push 1
lea ecx, [esp + 0x1fc]
mov byte [esp + 0x2e4], 0x1d
call fcn.00401bb0
push 1
lea ecx, [esp + 0x29c]
mov byte [esp + 0x2e4], 0x1c
call fcn.00401bb0
push 1
lea ecx, [esp + 0x21c]
mov byte [esp + 0x2e4], bl
call fcn.00401bb0
push 1
lea ecx, [esp + 0x27c]
mov byte [esp + 0x2e4], 0x1a
call fcn.00401bb0
push 1
lea ecx, [esp + 0x19c]
mov byte [esp + 0x2e4], 0x19
call fcn.00401bb0
push 1
lea ecx, [esp + 0x1ac]
mov byte [esp + 0x2e4], 0x18
call fcn.00401bb0
push 1
lea ecx, [esp + 0x1cc]
mov byte [esp + 0x2e4], 0x17
call fcn.00401bb0
push 1
lea ecx, [esp + 0x1ec]
mov byte [esp + 0x2e4], 0x16
call fcn.00401bb0
push 1
lea ecx, [esp + 0x20c]
mov byte [esp + 0x2e4], 0x15
call fcn.00401bb0
push 1
lea ecx, [esp + 0x22c]
mov byte [esp + 0x2e4], 0x14
call fcn.00401bb0
push 1
lea ecx, [esp + 0x24c]
mov byte [esp + 0x2e4], 0x13
call fcn.00401bb0
push 1
lea ecx, [esp + 0x168]
mov byte [esp + 0x2e4], 1
call fcn.00401bb0
push edi
push 1
sub esp, 0x10
lea eax, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x2c], esp
push eax
call fcn.0040a690
sub esp, 0x10
lea edx, [esp + 0x48]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
mov byte [esp + 0x30c], 0x20
call fcn.0040a690
mov ecx, 0x4b6448
mov byte [esp + 0x308], 1
call fcn.00472ce0
fld qword [esp + 0x5c]
fcomp qword [0x4a0200]
fnstsw ax
test ah, 0x41
je 0x447430
jmp 0x447259
fld qword [esp + 0x14]
fcomp qword [esp + 0x54]
fnstsw ax
test ah, 0x41
jne 0x446cbb
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], ecx
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x54]
push edx
push eax
lea ecx, [esp + 0x17c]
push str._.1f
push ecx
call fcn.0048dfde
add esp, 0xc
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x4aee6c
call fcn.0046ebc0
lea edx, [esp + 0x38]
push edx
call fcn.00470800
add esp, 8
mov ecx, dword [0x4a0148]
mov byte [esp + 0x2e0], 0x24
push ecx
push edi
push eax
lea ecx, [esp + 0x50]
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x38]
mov byte [esp + 0x2e4], 1
call fcn.00401bb0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x4aee7c
call fcn.0046ebc0
lea edx, [esp + 0x98]
push edx
call fcn.00470800
add esp, 8
push eax
push 0x4ae470
push ecx
mov byte [esp + 0x2ec], 0x25
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x4aee94
call fcn.0046ebc0
lea eax, [esp + 0x90]
push eax
call fcn.00470800
add esp, 8
lea ecx, [esp + 0x17c]
push eax
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push 6
push 0x4aee64
mov byte [esp + 0x2fc], 0x26
call fcn.0046ebc0
lea edx, [esp + 0x88]
push edx
call fcn.00470800
add esp, 8
push eax
push 0x4ae470
push ecx
mov byte [esp + 0x2fc], 0x27
mov ecx, esp
mov dword [esp + 0x30], esp
push 6
push 0x4aee94
call fcn.0046ebc0
lea eax, [esp + 0x80]
push eax
call fcn.00470800
add esp, 8
lea ecx, [esp + 0xc8]
push eax
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x4aee8c
mov byte [esp + 0x30c], 0x28
call fcn.0046ebc0
lea edx, [esp + 0x128]
push edx
call fcn.00470800
add esp, 8
push eax
lea eax, [esp + 0x118]
push eax
mov byte [esp + 0x308], 0x29
call fcn.0044b450
add esp, 0xc
lea ecx, [esp + 0x150]
push eax
push ecx
mov byte [esp + 0x304], 0x2a
call fcn.0044b320
add esp, 0xc
lea edx, [esp + 0x15c]
push eax
push edx
mov byte [esp + 0x300], 0x2b
call fcn.0044b450
add esp, 0xc
push eax
lea eax, [esp + 0x13c]
push eax
mov byte [esp + 0x2fc], 0x2c
call fcn.0044b320
add esp, 0xc
lea ecx, [esp + 0xe4]
push eax
push ecx
mov byte [esp + 0x2f8], 0x2d
call fcn.0044b450
add esp, 0xc
lea edx, [esp + 0xf0]
push eax
push edx
mov byte [esp + 0x2f4], 0x2e
call fcn.0044b320
add esp, 0xc
push eax
lea eax, [esp + 0x160]
push eax
mov byte [esp + 0x2f0], 0x2f
call fcn.0044b450
add esp, 0xc
lea ecx, [esp + 0x118]
push eax
push ecx
mov byte [esp + 0x2ec], 0x30
call fcn.0044b320
add esp, 0xc
mov edx, dword [0x4a0148]
lea ecx, [esp + 0x20]
push edx
push edi
push eax
mov byte [esp + 0x2ec], 0x31
call fcn.0040a8e0
mov eax, dword [esp + 0x118]
cmp eax, edi
je 0x446f1d
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x446f14
cmp al, 0xff
je 0x446f14
dec al
mov byte [ecx], al
jmp 0x446f1d
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x158]
mov dword [esp + 0x118], edi
cmp eax, edi
mov dword [esp + 0x11c], edi
mov dword [esp + 0x120], edi
je 0x446f5a
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x446f51
cmp al, 0xff
je 0x446f51
dec al
mov byte [ecx], al
jmp 0x446f5a
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0xe8]
mov dword [esp + 0x158], edi
cmp eax, edi
mov dword [esp + 0x15c], edi
mov dword [esp + 0x160], edi
je 0x446f97
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x446f8e
cmp al, 0xff
je 0x446f8e
dec al
mov byte [ecx], al
jmp 0x446f97
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0xd8]
mov dword [esp + 0xe8], edi
cmp eax, edi
mov dword [esp + 0xec], edi
mov dword [esp + 0xf0], edi
je 0x446fd4
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x446fcb
cmp al, 0xff
je 0x446fcb
dec al
mov byte [ecx], al
jmp 0x446fd4
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x128]
mov dword [esp + 0xd8], edi
cmp eax, edi
mov dword [esp + 0xdc], edi
mov dword [esp + 0xe0], edi
je 0x447011
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447008
cmp al, 0xff
je 0x447008
dec al
mov byte [ecx], al
jmp 0x447011
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x148]
mov dword [esp + 0x128], edi
cmp eax, edi
mov dword [esp + 0x12c], edi
mov dword [esp + 0x130], edi
je 0x44704e
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447045
cmp al, 0xff
je 0x447045
dec al
mov byte [ecx], al
jmp 0x44704e
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x138]
mov dword [esp + 0x148], edi
cmp eax, edi
mov dword [esp + 0x14c], edi
mov dword [esp + 0x150], edi
je 0x44708b
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447082
cmp al, 0xff
je 0x447082
dec al
mov byte [ecx], al
jmp 0x44708b
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x138], edi
cmp eax, edi
mov dword [esp + 0x13c], edi
mov dword [esp + 0x140], edi
je 0x4470c8
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4470bf
cmp al, 0xff
je 0x4470bf
dec al
mov byte [ecx], al
jmp 0x4470c8
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x108]
mov dword [esp + 0xf8], edi
cmp eax, edi
mov dword [esp + 0xfc], edi
mov dword [esp + 0x100], edi
je 0x447105
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4470fc
cmp al, 0xff
je 0x4470fc
dec al
mov byte [ecx], al
jmp 0x447105
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x68]
mov dword [esp + 0x108], edi
cmp eax, edi
mov dword [esp + 0x10c], edi
mov dword [esp + 0x110], edi
je 0x44713f
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447136
cmp al, 0xff
je 0x447136
dec al
mov byte [ecx], al
jmp 0x44713f
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x78]
mov dword [esp + 0x68], edi
cmp eax, edi
mov dword [esp + 0x6c], edi
mov dword [esp + 0x70], edi
je 0x447170
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447167
cmp al, 0xff
je 0x447167
dec al
mov byte [ecx], al
jmp 0x447170
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x88]
mov dword [esp + 0x78], edi
cmp eax, edi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x80], edi
je 0x4471a7
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x44719e
cmp al, 0xff
je 0x44719e
dec al
mov byte [ecx], al
jmp 0x4471a7
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x98]
mov dword [esp + 0x88], edi
cmp eax, edi
mov dword [esp + 0x8c], edi
mov dword [esp + 0x90], edi
mov byte [esp + 0x2e0], 1
je 0x4471ec
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4471e3
cmp al, 0xff
je 0x4471e3
dec al
mov byte [ecx], al
jmp 0x4471ec
push ecx
call fcn.0048d500
add esp, 4
push edi
push 1
sub esp, 0x10
lea eax, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x2c], esp
push eax
mov dword [esp + 0xb4], edi
mov dword [esp + 0xb8], edi
mov dword [esp + 0xbc], edi
call fcn.0040a690
sub esp, 0x10
lea edx, [esp + 0x48]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
mov byte [esp + 0x30c], 0x32
call fcn.0040a690
mov ecx, 0x4b6448
mov byte [esp + 0x308], 1
call fcn.00472ce0
fld qword [esp + 0x54]
fcomp qword [0x4a01f8]
fnstsw ax
test ah, 1
jne 0x44754f
push edi
push edi
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x4aeeb4
call fcn.0046ebc0
push ecx
mov byte [esp + 0x2f0], 0x36
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x4aebe0
call fcn.0046ebc0
mov ecx, 0x4b6448
mov byte [esp + 0x2f0], 1
call fcn.00472d90
inc ebp
cmp bp, 2
jl 0x44649e
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x4aeeb4
call fcn.0046ebc0
lea ecx, [esp + 0x38]
push ecx
call fcn.00470800
add esp, 8
mov edx, dword [0x4a0148]
lea ecx, [esp + 0x44]
push edx
push edi
push eax
mov byte [esp + 0x2ec], 0x37
call fcn.0040a8e0
mov eax, dword [esp + 0x38]
mov byte [esp + 0x2e0], 1
cmp eax, edi
je 0x44772f
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447726
cmp al, 0xff
je 0x447726
dec al
mov byte [ecx], al
jmp 0x44772f
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x4aeeb4
call fcn.0046ebc0
lea eax, [esp + 0x38]
push eax
call fcn.00470800
add esp, 8
mov ecx, dword [0x4a0148]
mov byte [esp + 0x2e0], 0xd
push ecx
push edi
push eax
lea ecx, [esp + 0x50]
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x38]
mov byte [esp + 0x2e4], 1
call fcn.00401bb0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x4aee5c
call fcn.0046ebc0
lea edx, [esp + 0x38]
push edx
call fcn.00470800
add esp, 8
mov ecx, dword [0x4a0148]
mov byte [esp + 0x2e0], 0xe
push ecx
push edi
push eax
lea ecx, [esp + 0x2c]
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x38]
mov byte [esp + 0x2e4], 1
call fcn.00401bb0
push edi
push 1
sub esp, 0x10
lea edx, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x2c], esp
push edx
call fcn.0040a690
sub esp, 0x10
mov byte [esp + 0x308], 0xf
mov ecx, esp
mov dword [esp + 0x44], esp
jmp 0x4474f1
push edi
push 1
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x2c], esp
push ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x4aeea4
call fcn.0046ebc0
push esi
call fcn.00470800
sub esp, 8
mov byte [esp + 0x308], 3
mov esi, esp
mov dword [esp + 0x44], esp
push ecx
mov ecx, esp
mov dword [esp + 0x48], esp
push 6
push 0x4aee54
call fcn.0046ebc0
push esi
call fcn.00470800
add esp, 8
jmp 0x4474fb
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x4aeeb4
call fcn.0046ebc0
lea ecx, [esp + 0x38]
push ecx
call fcn.00470800
add esp, 8
mov edx, dword [0x4a0148]
lea ecx, [esp + 0x44]
push edx
push edi
push eax
mov byte [esp + 0x2ec], 0x21
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x38]
mov byte [esp + 0x2e4], 1
call fcn.00401bb0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x4aee4c
call fcn.0046ebc0
lea eax, [esp + 0x38]
push eax
call fcn.00470800
add esp, 8
mov ecx, dword [0x4a0148]
mov byte [esp + 0x2e0], 0x22
push ecx
push edi
push eax
lea ecx, [esp + 0x2c]
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x38]
mov byte [esp + 0x2e4], 1
call fcn.00401bb0
push edi
push 1
sub esp, 0x10
lea edx, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x2c], esp
push edx
call fcn.0040a690
sub esp, 0x10
mov byte [esp + 0x308], 0x23
mov ecx, esp
mov dword [esp + 0x44], esp
lea eax, [esp + 0x48]
push eax
call fcn.0040a690
mov ecx, 0x4b6448
mov byte [esp + 0x308], 1
call fcn.00472ce0
push 1
lea ecx, [esp + 0x24]
mov byte [esp + 0x2e4], 0
call fcn.00401bb0
push 1
lea ecx, [esp + 0x48]
mov dword [esp + 0x2e4], 0xffffffff
call fcn.00401bb0
xor ax, ax
mov ecx, dword [esp + 0x2d8]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x4aeeb4
call fcn.0046ebc0
lea ecx, [esp + 0x38]
push ecx
call fcn.00470800
add esp, 8
mov edx, dword [0x4a0148]
lea ecx, [esp + 0x44]
push edx
push edi
push eax
mov byte [esp + 0x2ec], 0x33
call fcn.0040a8e0
mov eax, dword [esp + 0x38]
mov byte [esp + 0x2e0], 1
cmp eax, edi
je 0x4475b6
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4475ad
cmp al, 0xff
je 0x4475ad
dec al
mov byte [ecx], al
jmp 0x4475b6
push ecx
call fcn.0048d500
add esp, 4
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x4aee44
call fcn.0046ebc0
lea eax, [esp + 0x38]
push eax
call fcn.00470800
add esp, 8
mov ecx, dword [0x4a0148]
mov byte [esp + 0x2e0], 0x34
push ecx
push edi
push eax
lea ecx, [esp + 0x2c]
call fcn.0040a8e0
mov eax, dword [esp + 0x38]
mov byte [esp + 0x2e0], 1
cmp eax, edi
je 0x44761d
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447614
cmp al, 0xff
je 0x447614
dec al
mov byte [ecx], al
jmp 0x44761d
push ecx
call fcn.0048d500
add esp, 4
push edi
push 1
sub esp, 0x10
lea edx, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x2c], esp
push edx
call fcn.0040a690
sub esp, 0x10
lea eax, [esp + 0x48]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
mov byte [esp + 0x30c], 0x35
call fcn.0040a690
mov ecx, 0x4b6448
mov byte [esp + 0x308], 1
call fcn.00472ce0
mov ecx, dword [esp + 0x24]
cmp ecx, edi
je 0x447684
mov al, byte [ecx - 1]
test al, al
je 0x44767a
cmp al, 0xff
je 0x44767a
dec al
mov byte [ecx - 1], al
jmp 0x447684
dec ecx
push ecx
call fcn.0048d500
add esp, 4
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x24], edi
cmp ecx, edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], edi
je 0x4476cb
mov al, byte [ecx - 1]
test al, al
je 0x4476c1
cmp al, 0xff
je 0x4476c1
dec al
mov byte [ecx - 1], al
xor ax, ax
mov ecx, dword [esp + 0x2d8]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
dec ecx
push ecx
call fcn.0048d500
add esp, 4
xor ax, ax
mov ecx, dword [esp + 0x2d8]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
push edi
push 1
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x2c], esp
push ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x4aeea4
call fcn.0046ebc0
push esi
call fcn.00470800
sub esp, 8
mov byte [esp + 0x308], 0x11
mov esi, esp
mov dword [esp + 0x44], esp
push ecx
mov ecx, esp
mov dword [esp + 0x48], esp
jmp 0x447416
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
push eax
push ecx
lea edx, [esp + 0xb8]
push str._.0f
push edx
call fcn.0048dfde
add esp, 0x10
push 0x4ae470
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x4aee94
call fcn.0046ebc0
lea eax, [esp + 0x3c]
push eax
call fcn.00470800
add esp, 8
lea ecx, [esp + 0xb4]
push eax
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x4aee3c
mov byte [esp + 0x2f8], 0x38
call fcn.0046ebc0
lea edx, [esp + 0x74]
push edx
call fcn.00470800
add esp, 8
push eax
lea eax, [esp + 0x84]
push eax
mov byte [esp + 0x2f4], 0x39
call fcn.0044b450
add esp, 0xc
lea ecx, [esp + 0x8c]
push eax
push ecx
mov byte [esp + 0x2f0], 0x3a
call fcn.0044b320
add esp, 0xc
lea edx, [esp + 0x98]
push eax
push edx
mov byte [esp + 0x2ec], 0x3b
call fcn.0044b450
add esp, 0xc
mov ecx, dword [0x4a0148]
mov byte [esp + 0x2e0], 0x3c
push ecx
push edi
push eax
lea ecx, [esp + 0x2c]
call fcn.0040a8e0
mov eax, dword [esp + 0x98]
cmp eax, edi
je 0x447831
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447828
cmp al, 0xff
je 0x447828
dec al
mov byte [ecx], al
jmp 0x447831
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x88]
mov dword [esp + 0x98], edi
cmp eax, edi
mov dword [esp + 0x9c], edi
mov dword [esp + 0xa0], edi
je 0x44786e
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447865
cmp al, 0xff
je 0x447865
dec al
mov byte [ecx], al
jmp 0x44786e
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x78]
mov dword [esp + 0x88], edi
cmp eax, edi
mov dword [esp + 0x8c], edi
mov dword [esp + 0x90], edi
je 0x4478a8
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x44789f
cmp al, 0xff
je 0x44789f
dec al
mov byte [ecx], al
jmp 0x4478a8
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x68]
mov dword [esp + 0x78], edi
cmp eax, edi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x80], edi
je 0x4478dc
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4478d3
cmp al, 0xff
je 0x4478d3
dec al
mov byte [ecx], al
jmp 0x4478dc
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x38]
mov dword [esp + 0x68], edi
cmp eax, edi
mov dword [esp + 0x6c], edi
mov dword [esp + 0x70], edi
mov byte [esp + 0x2e0], 1
je 0x447915
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x44790c
cmp al, 0xff
je 0x44790c
dec al
mov byte [ecx], al
jmp 0x447915
push ecx
call fcn.0048d500
add esp, 4
mov edx, dword [esp + 0x60]
mov eax, dword [esp + 0x5c]
push edx
push eax
lea ecx, [esp + 0xb8]
push str._.0f
push ecx
call fcn.0048dfde
add esp, 0x10
push 0x4ae470
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x4aee94
call fcn.0046ebc0
lea edx, [esp + 0x3c]
push edx
call fcn.00470800
add esp, 8
push eax
lea eax, [esp + 0xb8]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x4aee34
mov byte [esp + 0x2f8], 0x3d
call fcn.0046ebc0
lea ecx, [esp + 0x74]
push ecx
call fcn.00470800
add esp, 8
lea edx, [esp + 0x80]
push eax
push edx
mov byte [esp + 0x2f4], 0x3e
call fcn.0044b450
add esp, 0xc
push eax
lea eax, [esp + 0x90]
push eax
mov byte [esp + 0x2f0], 0x3f
call fcn.0044b320
add esp, 0xc
lea ecx, [esp + 0x98]
push eax
push ecx
mov byte [esp + 0x2ec], 0x40
call fcn.0044b450
add esp, 0xc
mov esi, eax
mov ecx, dword [0x4a0148]
mov eax, dword [esi + 8]
mov ebp, ecx
mov byte [esp + 0x2e0], 0x41
cmp eax, ebp
jae 0x4479f0
mov ebp, eax
sub ecx, dword [esp + 0x28]
cmp ecx, ebp
ja 0x4479fd
call fcn.0048d50b
cmp ebp, edi
jbe 0x447a4c
mov edx, dword [esp + 0x28]
push edi
lea ecx, [esp + 0x24]
lea ebx, [edx + ebp]
push ebx
call fcn.0040aba0
test al, al
je 0x447a4c
mov esi, dword [esi + 4]
cmp esi, edi
jne 0x447a23
mov esi, 0x4a014c
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
lea edi, [ecx + eax]
mov ecx, ebp
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 eax, dword [esp + 0x24]
mov dword [esp + 0x28], ebx
xor edi, edi
mov byte [eax + ebx], 0
mov eax, dword [esp + 0x98]
cmp eax, edi
je 0x447a74
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447a6b
cmp al, 0xff
je 0x447a6b
dec al
mov byte [ecx], al
jmp 0x447a74
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x88]
mov dword [esp + 0x98], edi
cmp eax, edi
mov dword [esp + 0x9c], edi
mov dword [esp + 0xa0], edi
je 0x447ab1
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447aa8
cmp al, 0xff
je 0x447aa8
dec al
mov byte [ecx], al
jmp 0x447ab1
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x78]
mov dword [esp + 0x88], edi
cmp eax, edi
mov dword [esp + 0x8c], edi
mov dword [esp + 0x90], edi
je 0x447aeb
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447ae2
cmp al, 0xff
je 0x447ae2
dec al
mov byte [ecx], al
jmp 0x447aeb
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x68]
mov dword [esp + 0x78], edi
cmp eax, edi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x80], edi
je 0x447b1f
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447b16
cmp al, 0xff
je 0x447b16
dec al
mov byte [ecx], al
jmp 0x447b1f
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x38]
mov dword [esp + 0x68], edi
cmp eax, edi
mov dword [esp + 0x6c], edi
mov dword [esp + 0x70], edi
mov byte [esp + 0x2e0], 1
je 0x447b58
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447b4f
cmp al, 0xff
je 0x447b4f
dec al
mov byte [ecx], al
jmp 0x447b58
push ecx
call fcn.0048d500
add esp, 4
fld qword [esp + 0x54]
fsub qword [esp + 0x5c]
sub esp, 8
lea ecx, [esp + 0xb8]
fstp qword [esp]
push str._.0f
push ecx
call fcn.0048dfde
add esp, 0x10
push 0x4ae470
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x4aee94
call fcn.0046ebc0
lea edx, [esp + 0x3c]
push edx
call fcn.00470800
add esp, 8
push eax
lea eax, [esp + 0xb8]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x4aee2c
mov byte [esp + 0x2f8], 0x42
call fcn.0046ebc0
lea ecx, [esp + 0x74]
push ecx
call fcn.00470800
add esp, 8
lea edx, [esp + 0x80]
push eax
push edx
mov byte [esp + 0x2f4], 0x43
call fcn.0044b450
add esp, 0xc
push eax
lea eax, [esp + 0x90]
push eax
mov byte [esp + 0x2f0], 0x44
call fcn.0044b320
add esp, 0xc
lea ecx, [esp + 0x98]
push eax
push ecx
mov byte [esp + 0x2ec], 0x45
call fcn.0044b450
add esp, 0xc
mov esi, eax
mov ecx, dword [0x4a0148]
mov eax, dword [esi + 8]
mov ebp, ecx
mov byte [esp + 0x2e0], 0x46
cmp eax, ebp
jae 0x447c37
mov ebp, eax
sub ecx, dword [esp + 0x28]
cmp ecx, ebp
ja 0x447c44
call fcn.0048d50b
cmp ebp, edi
jbe 0x447c93
mov edx, dword [esp + 0x28]
xor edi, edi
push edi
lea ecx, [esp + 0x24]
lea ebx, [edx + ebp]
push ebx
call fcn.0040aba0
test al, al
je 0x447c95
mov esi, dword [esi + 4]
cmp esi, edi
jne 0x447c6c
mov esi, 0x4a014c
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
lea edi, [ecx + eax]
mov ecx, ebp
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 eax, dword [esp + 0x24]
mov dword [esp + 0x28], ebx
mov byte [eax + ebx], 0
xor edi, edi
mov eax, dword [esp + 0x98]
cmp eax, edi
je 0x447cbd
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447cb4
cmp al, 0xff
je 0x447cb4
dec al
mov byte [ecx], al
jmp 0x447cbd
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x88]
mov dword [esp + 0x98], edi
cmp eax, edi
mov dword [esp + 0x9c], edi
mov dword [esp + 0xa0], edi
je 0x447cfa
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447cf1
cmp al, 0xff
je 0x447cf1
dec al
mov byte [ecx], al
jmp 0x447cfa
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x78]
mov dword [esp + 0x88], edi
cmp eax, edi
mov dword [esp + 0x8c], edi
mov dword [esp + 0x90], edi
je 0x447d34
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447d2b
cmp al, 0xff
je 0x447d2b
dec al
mov byte [ecx], al
jmp 0x447d34
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x68]
mov dword [esp + 0x78], edi
cmp eax, edi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x80], edi
je 0x447d68
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447d5f
cmp al, 0xff
je 0x447d5f
dec al
mov byte [ecx], al
jmp 0x447d68
push ecx
call fcn.0048d500
add esp, 4
mov eax, dword [esp + 0x38]
mov dword [esp + 0x68], edi
cmp eax, edi
mov dword [esp + 0x6c], edi
mov dword [esp + 0x70], edi
mov byte [esp + 0x2e0], 1
je 0x447da1
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447d98
cmp al, 0xff
je 0x447d98
dec al
mov byte [ecx], al
jmp 0x447da1
push ecx
call fcn.0048d500
add esp, 4
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x4aee24
call fcn.0046ebc0
lea ecx, [esp + 0x168]
push ecx
call fcn.00470800
add esp, 8
mov esi, eax
mov eax, dword [0x4a0148]
mov ecx, dword [esi + 8]
mov ebx, eax
mov byte [esp + 0x2e0], 0x47
cmp ecx, ebx
jae 0x447dde
mov ebx, ecx
sub eax, dword [esp + 0x28]
cmp eax, ebx
ja 0x447deb
call fcn.0048d50b
cmp ebx, edi
jbe 0x447e8d
mov edx, dword [esp + 0x28]
lea ecx, [esp + 0x20]
lea ebp, [edx + ebx]
call fcn.0040af80
cmp eax, ebp
jae 0x447e0c
call fcn.0048d50b
mov ecx, dword [esp + 0x24]
cmp ecx, edi
je 0x447e34
mov al, byte [ecx - 1]
test al, al
je 0x447e34
cmp al, 0xff
je 0x447e34
cmp ebp, edi
jne 0x447e4e
dec al
push edi
mov byte [ecx - 1], al
lea ecx, [esp + 0x24]
call fcn.00401bb0
jmp 0x447e8d
cmp ebp, edi
jne 0x447e48
cmp ecx, edi
je 0x447e8d
push edi
lea ecx, [esp + 0x24]
call fcn.0040ab80
jmp 0x447e8d
cmp dword [esp + 0x2c], ebp
jae 0x447e5c
push ebp
lea ecx, [esp + 0x24]
call fcn.00401ea0
mov ecx, dword [esp + 0x24]
mov esi, dword [esi + 4]
cmp esi, edi
jne 0x447e68
mov esi, 0x4a014c
mov eax, dword [esp + 0x28]
lea edi, [eax + ecx]
mov ecx, ebx
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 eax, dword [esp + 0x24]
mov dword [esp + 0x28], ebp
xor edi, edi
mov byte [eax + ebp], 0
mov eax, dword [esp + 0x168]
mov byte [esp + 0x2e0], 1
cmp eax, edi
je 0x447ebd
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x447eb4
cmp al, 0xff
je 0x447eb4
dec al
mov byte [ecx], al
jmp 0x447ebd
push ecx
call fcn.0048d500
add esp, 4
push edi
push 1
sub esp, 0x10
lea edx, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x2c], esp
push edx
call fcn.0040a690
sub esp, 0x10
lea eax, [esp + 0x48]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
mov byte [esp + 0x30c], 0x48
call fcn.0040a690
mov ecx, 0x4b6448
mov byte [esp + 0x308], 1
call fcn.00472ce0
mov ecx, dword [esp + 0x24]
cmp ecx, edi
je 0x447f24
mov al, byte [ecx - 1]
test al, al
je 0x447f1a
cmp al, 0xff
je 0x447f1a
dec al
mov byte [ecx - 1], al
jmp 0x447f24
dec ecx
push ecx
call fcn.0048d500
add esp, 4
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x24], edi
cmp ecx, edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], edi
je 0x447f54
mov al, byte [ecx - 1]
test al, al
je 0x447f4a
cmp al, 0xff
je 0x447f4a
dec al
mov byte [ecx - 1], al
jmp 0x447f54
dec ecx
push ecx
call fcn.0048d500
add esp, 4
mov ecx, dword [esp + 0x2d8]
pop edi
mov ax, 1
mov dword fs:[0], ecx
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret