Function at 0x44df70
Capabilities:
Access peb ldr_data
Check os version
Encode data using base64
Parse pe header

Disassembly:
push 0xffffffffffffffff
push 0x5268e4
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x20c
push ebx
push esi
push edi
xor ebx, ebx
lea ecx, [esp + 0xc]
mov dword [esp + 0x220], ebx
call fcn.0048a5e0
lea ecx, [esp + 0x2c]
mov byte [esp + 0x220], 1
call fcn.00496190
mov al, byte [esp + 0x3f]
mov dword [esp + 0x1c], ebx
mov byte [esp + 0x18], al
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
push 6
push 0x54c3c8
lea ecx, [esp + 0x30]
mov byte [esp + 0x228], 3
call fcn.0048a680
push 5
lea ecx, [esp + 0x22c]
mov byte [esp + 0x224], 4
call fcn.0048a9e0
push eax
push 5
lea ecx, [esp + 0x30]
call fcn.0048a9f0
push ecx
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0048a5f0
lea ecx, [esp + 0x30]
call fcn.00496910
mov eax, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x24]
push eax
push eax
call fcn.00415780
mov ecx, dword [esp + 0x2c]
add esp, 0xc
mov esi, eax
push ecx
push esi
lea ecx, [esp + 0x20]
call fcn.00405f70
lea edx, [esp + 0x18]
push 1
lea eax, [esp + 0x30]
push edx
push eax
mov ecx, 0x557ff0
mov dword [esp + 0x2c], esi
call fcn.00403f50
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x44e071
mov ecx, dword [esp + 0x20]
sub ecx, eax
test ecx, 0xfffffffc
jne 0x44e103
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44e0a9
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44e096
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 6
call fcn.00407ba0
mov byte [esp + 0x220], 5
jmp 0x451428
push ebx
lea ecx, [esp + 0x1c]
call fcn.00405cb0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0048a5f0
lea ecx, [esp + 0x10]
call fcn.0048a8d0
push 5
lea ecx, [esp + 0x22c]
call fcn.0048a9e0
and eax, 0xff
cmp eax, 0x2a
ja case.default.0x44e13f
jmp dword [eax*4 + 0x451468]
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 4
jge 0x44e1eb
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44e191
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44e17e
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 8
call fcn.00407ba0
mov byte [esp + 0x220], 7
jmp 0x451428
push 2
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 3
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov edx, dword [esp + 0x10]
and eax, 0xff
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fstp qword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x244]
push eax
push ecx
push str._.0f
push edx
call fcn.00514b75
add esp, 0x10
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0xa
jge 0x44e2f0
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44e296
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44e283
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0xa
call fcn.00407ba0
mov byte [esp + 0x220], 9
jmp 0x451428
push 8
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 9
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
lea edx, [ecx + eax - 0x28]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x44e223
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0x10
jge 0x44e3d4
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44e37a
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44e367
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0xc
call fcn.00407ba0
mov byte [esp + 0x220], 0xb
jmp 0x451428
push 0xe
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 0xf
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
add ecx, eax
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
jmp 0x450049
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0xe
jge 0x44e4b6
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44e45c
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44e449
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0xe
call fcn.00407ba0
mov byte [esp + 0x220], 0xd
jmp 0x451428
push 0xc
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 0xd
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov edx, dword [esp + 0x10]
and eax, 0xff
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x531328]
jmp 0x44fb6c
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 6
jge 0x44e59e
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44e544
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44e531
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x10
call fcn.00407ba0
mov byte [esp + 0x220], 0xf
jmp 0x451428
push 4
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 5
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
add ecx, eax
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
jmp 0x450049
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 8
jge 0x44e680
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44e626
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44e613
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x12
call fcn.00407ba0
mov byte [esp + 0x220], 0x11
jmp 0x451428
push 6
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 7
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov edx, dword [esp + 0x10]
and eax, 0xff
lea eax, [edx + eax - 0x28]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x244]
fild dword [esp + 0x10]
fstp qword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push ecx
push edx
push str._.0f
push eax
call fcn.00514b75
add esp, 0x10
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0x16
jge 0x44e787
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44e72d
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44e71a
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x14
call fcn.00407ba0
mov byte [esp + 0x220], 0x13
jmp 0x451428
push 0x14
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 0x15
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
add ecx, eax
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
jmp 0x450049
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0x12
jge 0x44e869
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44e80f
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44e7fc
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x16
call fcn.00407ba0
mov byte [esp + 0x220], 0x15
jmp 0x451428
push 0x10
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 0x11
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov edx, dword [esp + 0x10]
and eax, 0xff
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x44e223
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0x14
jge 0x44e94b
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44e8f1
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44e8de
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x18
call fcn.00407ba0
mov byte [esp + 0x220], 0x17
jmp 0x451428
push 0x13
lea ecx, [esp + 0x10]
call fcn.0048a9e0
cmp al, 0xff
jne 0x44e96f
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0x40700000
jmp 0x44e227
push 0x13
lea ecx, [esp + 0x10]
call fcn.0048a9e0
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
jmp 0x44e223
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0xc
jge 0x44ea31
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44e9d7
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44e9c4
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x1a
call fcn.00407ba0
mov byte [esp + 0x220], 0x19
jmp 0x451428
push 0xa
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 0xb
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
lea edx, [ecx + eax - 0x28]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x44e223
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0x11
jge 0x44eb15
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44eabb
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44eaa8
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x1c
call fcn.00407ba0
mov byte [esp + 0x220], 0x1b
jmp 0x451428
push 0x10
lea ecx, [esp + 0x10]
call fcn.0048a9e0
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x531aa8]
jmp 0x44fb6c
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0x14
jge 0x44ebdd
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44eb83
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44eb70
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x1e
call fcn.00407ba0
mov byte [esp + 0x220], 0x1d
jmp 0x451428
push 0x13
lea ecx, [esp + 0x10]
call fcn.0048a9e0
and eax, 0xff
shl eax, 5
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x5312e0]
jmp 0x44fb6c
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 4
jge 0x44eca8
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44ec4e
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44ec3b
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x20
call fcn.00407ba0
mov byte [esp + 0x220], 0x1f
jmp 0x451428
push 2
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 3
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
add ecx, eax
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
jmp 0x450049
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 4
jge 0x44ed8a
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44ed30
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44ed1d
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x22
call fcn.00407ba0
mov byte [esp + 0x220], 0x21
jmp 0x451428
push 2
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 3
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov edx, dword [esp + 0x10]
and eax, 0xff
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x44e223
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 4
jge 0x44ee6c
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44ee12
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44edff
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x24
call fcn.00407ba0
mov byte [esp + 0x220], 0x23
jmp 0x451428
push 2
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 3
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
add ecx, eax
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x244]
fild dword [esp + 0x10]
fmul qword [0x531aa0]
fstp qword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push str._.3f
push ecx
call fcn.00514b75
add esp, 0x10
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 4
jge 0x44ef77
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44ef1d
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44ef0a
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x26
call fcn.00407ba0
mov byte [esp + 0x220], 0x25
jmp 0x451428
push 2
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 3
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov edx, dword [esp + 0x10]
and eax, 0xff
add edx, eax
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x244]
fild dword [esp + 0x10]
fmul qword [0x531aa0]
fstp qword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
push eax
push ecx
push str._.3f
push edx
call fcn.00514b75
add esp, 0x10
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 9
jge 0x44f082
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44f028
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44f015
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x28
call fcn.00407ba0
mov byte [esp + 0x220], 0x27
jmp 0x451428
push 8
lea ecx, [esp + 0x10]
call fcn.0048a9e0
test al, 0xf
jne 0x44f0f7
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x54c368
call fcn.0048a680
lea eax, [esp + 0xfc]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x44f0c0
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0xfc]
call fcn.00405cc0
jmp case.default.0x44e13f
push 8
lea ecx, [esp + 0x10]
call fcn.0048a9e0
and al, 0xf
cmp al, 2
jae 0x44f16e
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x54c4c0
call fcn.0048a680
lea eax, [esp + 0x9c]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x44f137
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x9c]
call fcn.00405cc0
jmp case.default.0x44e13f
push 8
lea ecx, [esp + 0x10]
call fcn.0048a9e0
and al, 0xf
push ecx
cmp al, 4
mov ecx, esp
jae 0x44f1e5
mov dword [esp + 0x14], esp
push 6
push 0x54c4b8
call fcn.0048a680
lea eax, [esp + 0x15c]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x44f1ae
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x15c]
call fcn.00405cc0
jmp case.default.0x44e13f
mov dword [esp + 0x14], esp
push 6
push 0x54c4b0
call fcn.0048a680
lea eax, [esp + 0xbc]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x44f211
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0xbc]
call fcn.00405cc0
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 4
jge 0x44f2ed
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44f293
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44f280
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x2a
call fcn.00407ba0
mov byte [esp + 0x220], 0x29
jmp 0x451428
push 2
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 3
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
add ecx, eax
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fstp qword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x244]
push edx
push eax
push str._.0f
push ecx
call fcn.00514b75
add esp, 0x10
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 6
jge 0x44f3f2
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44f398
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44f385
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x2c
call fcn.00407ba0
mov byte [esp + 0x220], 0x2b
jmp 0x451428
push 4
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 5
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov edx, dword [esp + 0x10]
and eax, 0xff
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x531328]
jmp 0x44fb6c
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 8
jge 0x44f4da
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44f480
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44f46d
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x2e
call fcn.00407ba0
mov byte [esp + 0x220], 0x2d
jmp 0x451428
push 6
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 7
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
lea edx, [ecx + eax - 0x28]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x44e223
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 6
jge 0x44f5be
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44f564
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44f551
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x30
call fcn.00407ba0
mov byte [esp + 0x220], 0x2f
jmp 0x451428
push 4
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 5
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
add ecx, eax
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
jmp 0x44f325
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0xa
jge 0x44f6a0
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44f646
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44f633
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x32
call fcn.00407ba0
mov byte [esp + 0x220], 0x31
jmp 0x451428
push 8
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 9
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov edx, dword [esp + 0x10]
and eax, 0xff
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x531328]
jmp 0x44fb6c
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0xc
jge 0x44f788
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44f72e
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44f71b
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x34
call fcn.00407ba0
mov byte [esp + 0x220], 0x33
jmp 0x451428
push 0xa
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 0xb
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
add ecx, eax
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
jmp 0x450049
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0xe
jge 0x44f86a
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44f810
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44f7fd
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x36
call fcn.00407ba0
mov byte [esp + 0x220], 0x35
jmp 0x451428
push 0xc
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 0xd
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov edx, dword [esp + 0x10]
and eax, 0xff
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x531328]
jmp 0x44fb6c
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0x10
jge 0x44f952
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44f8f8
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44f8e5
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x38
call fcn.00407ba0
mov byte [esp + 0x220], 0x37
jmp 0x451428
push 0xe
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 0xf
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
add ecx, eax
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
jmp 0x450049
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0x12
jge 0x44fa34
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44f9da
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44f9c7
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x3a
call fcn.00407ba0
mov byte [esp + 0x220], 0x39
jmp 0x451428
push 0x10
lea ecx, [esp + 0x10]
call fcn.0048a9e0
and eax, 0xff
and eax, 0x8000003f
jns 0x44fa50
dec eax
or eax, 0xffffffc0
inc eax
mov dword [esp + 0x10], eax
push 0x11
fild dword [esp + 0x14]
lea ecx, [esp + 0x10]
fmul qword [0x531a98]
fstp qword [esp + 0x74]
call fcn.0048a9e0
and eax, 0xff
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x531a90]
fadd qword [esp + 0x70]
jmp 0x45004f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0x14
jge 0x44fb2e
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44fad4
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44fac1
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x3c
call fcn.00407ba0
mov byte [esp + 0x220], 0x3b
jmp 0x451428
push 0x12
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 0x13
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov edx, dword [esp + 0x10]
and eax, 0xff
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x531a88]
fstp qword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x244]
push eax
push ecx
push str._.2f
push edx
call fcn.00514b75
add esp, 0x10
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0x16
jge 0x44fc39
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44fbdf
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44fbcc
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x3e
call fcn.00407ba0
mov byte [esp + 0x220], 0x3d
jmp 0x451428
push 0x14
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 0x15
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
add ecx, eax
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x531a88]
jmp 0x45004f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0x18
jge 0x44fd21
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44fcc7
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44fcb4
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x40
call fcn.00407ba0
mov byte [esp + 0x220], 0x3f
jmp 0x451428
push 0x16
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 0x17
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov edx, dword [esp + 0x10]
and eax, 0xff
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x531a88]
jmp 0x44ff4c
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 4
jge 0x44fe09
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44fdaf
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44fd9c
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x42
call fcn.00407ba0
mov byte [esp + 0x220], 0x41
jmp 0x451428
push 2
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 3
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
add ecx, eax
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x244]
fild dword [esp + 0x10]
fstp qword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push str._.0f
push ecx
call fcn.00514b75
add esp, 0x10
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 8
jge 0x44ff0e
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x44feb4
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x44fea1
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x44
call fcn.00407ba0
mov byte [esp + 0x220], 0x43
jmp 0x451428
push 6
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 7
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov edx, dword [esp + 0x10]
and eax, 0xff
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x531328]
fstp qword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x244]
push eax
push ecx
push str._.2f
push edx
call fcn.00514b75
add esp, 0x10
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 6
jge 0x450011
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
push eax
push ecx
lea ecx, [esp + 0x20]
mov byte [esp + 0x228], 2
call fcn.00405f70
mov edx, dword [esp + 0x1c]
push edx
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x46
call fcn.00407ba0
mov byte [esp + 0x220], 0x45
jmp 0x451428
push 4
lea ecx, [esp + 0x10]
call fcn.0048a9e0
mov dl, al
push 5
and edx, 0xff
lea ecx, [esp + 0x10]
shl edx, 8
mov dword [esp + 0x14], edx
call fcn.0048a9e0
mov ecx, dword [esp + 0x10]
and eax, 0xff
add ecx, eax
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x531328]
fstp qword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x244]
push edx
push eax
push str._.2f
push ecx
call fcn.00514b75
add esp, 0x10
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 9
jge 0x450114
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
push edx
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x228], 2
call fcn.00405f70
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x48
call fcn.00407ba0
mov byte [esp + 0x220], 0x47
jmp 0x451428
push 8
lea ecx, [esp + 0x10]
call fcn.0048a9e0
test al, al
jne 0x450189
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x54c4a8
call fcn.0048a680
lea edx, [esp + 0x1bc]
push edx
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x450152
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x1bc]
call fcn.00405cc0
jmp case.default.0x44e13f
push 8
lea ecx, [esp + 0x10]
call fcn.0048a9e0
cmp al, 0x20
jne 0x4501fe
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x54c4a0
call fcn.0048a680
lea ecx, [esp + 0xdc]
push ecx
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x4501c7
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0xdc]
call fcn.00405cc0
jmp case.default.0x44e13f
push 8
lea ecx, [esp + 0x10]
call fcn.0048a9e0
cmp al, 0x40
je 0x45032e
push 8
lea ecx, [esp + 0x10]
call fcn.0048a9e0
cmp al, 0x60
je 0x45032e
push 8
lea ecx, [esp + 0x10]
call fcn.0048a9e0
cmp al, 0xc0
je 0x45032e
push 8
lea ecx, [esp + 0x10]
call fcn.0048a9e0
cmp al, 0xe0
je 0x45032e
push 8
lea ecx, [esp + 0x10]
call fcn.0048a9e0
cmp al, 0x80
je 0x4502ce
push 8
lea ecx, [esp + 0x10]
call fcn.0048a9e0
cmp al, 0xa0
je 0x4502ce
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x54c498
call fcn.0048a680
lea eax, [esp + 0x17c]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x450297
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x17c]
call fcn.00405cc0
jmp case.default.0x44e13f
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x54c490
call fcn.0048a680
lea eax, [esp + 0x7c]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x4502fa
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x7c]
call fcn.00405cc0
jmp case.default.0x44e13f
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x54c488
call fcn.0048a680
lea eax, [esp + 0x1fc]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x45035d
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x1fc]
call fcn.00405cc0
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 3
jge 0x450439
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x4503df
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x4503cc
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x4a
call fcn.00407ba0
mov byte [esp + 0x220], 0x49
jmp 0x451428
push 2
lea ecx, [esp + 0x10]
call fcn.0048a9e0
push ecx
test al, 2
mov ecx, esp
je 0x4504ae
mov dword [esp + 0x14], esp
push 6
push 0x54c480
call fcn.0048a680
lea eax, [esp + 0x11c]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x450477
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x11c]
call fcn.00405cc0
jmp case.default.0x44e13f
mov dword [esp + 0x14], esp
push 6
push 0x54c478
call fcn.0048a680
lea eax, [esp + 0x19c]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x4504da
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x19c]
call fcn.00405cc0
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0xd
jge 0x4505b6
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x45055c
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x450549
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x4c
call fcn.00407ba0
mov byte [esp + 0x220], 0x4b
jmp 0x451428
push 0xc
lea ecx, [esp + 0x10]
call fcn.0048a9e0
push ecx
test al, 1
mov ecx, esp
je 0x45062b
mov dword [esp + 0x14], esp
push 6
push 0x54c480
call fcn.0048a680
lea eax, [esp + 0x13c]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x4505f4
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x13c]
call fcn.00405cc0
jmp case.default.0x44e13f
mov dword [esp + 0x14], esp
push 6
push 0x54c478
call fcn.0048a680
lea eax, [esp + 0x1dc]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x450657
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x1dc]
call fcn.00405cc0
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 7
jge 0x450733
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x4506d9
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x4506c6
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x4e
call fcn.00407ba0
mov byte [esp + 0x220], 0x4d
jmp 0x451428
push 6
lea ecx, [esp + 0x10]
call fcn.0048a9e0
push ecx
test al, 2
mov ecx, esp
je 0x4507a8
mov dword [esp + 0x14], esp
push 6
push 0x54c480
call fcn.0048a680
lea eax, [esp + 0x8c]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x450771
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x8c]
call fcn.00405cc0
jmp case.default.0x44e13f
mov dword [esp + 0x14], esp
push 6
push 0x54c478
call fcn.0048a680
lea eax, [esp + 0xac]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x4507d4
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0xac]
call fcn.00405cc0
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0xa
jge 0x4508b0
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x450856
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x450843
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x50
call fcn.00407ba0
mov byte [esp + 0x220], 0x4f
jmp 0x451428
push 9
lea ecx, [esp + 0x10]
call fcn.0048a9e0
push ecx
test al, 1
mov ecx, esp
je 0x450925
mov dword [esp + 0x14], esp
push 6
push 0x54c480
call fcn.0048a680
lea eax, [esp + 0xcc]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x4508ee
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0xcc]
call fcn.00405cc0
jmp case.default.0x44e13f
mov dword [esp + 0x14], esp
push 6
push 0x54c478
call fcn.0048a680
lea eax, [esp + 0xec]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x450951
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0xec]
call fcn.00405cc0
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0xc
jge 0x450a2d
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x4509d3
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x4509c0
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x52
call fcn.00407ba0
mov byte [esp + 0x220], 0x51
jmp 0x451428
push 0xb
lea ecx, [esp + 0x10]
call fcn.0048a9e0
push ecx
test al, 1
mov ecx, esp
je 0x450aa2
mov dword [esp + 0x14], esp
push 6
push 0x54c480
call fcn.0048a680
lea eax, [esp + 0x10c]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x450a6b
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x10c]
call fcn.00405cc0
jmp case.default.0x44e13f
mov dword [esp + 0x14], esp
push 6
push 0x54c478
call fcn.0048a680
lea eax, [esp + 0x12c]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x450ace
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x12c]
call fcn.00405cc0
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0xb
jge 0x450baa
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x450b50
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x450b3d
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x54
call fcn.00407ba0
mov byte [esp + 0x220], 0x53
jmp 0x451428
push 0xa
lea ecx, [esp + 0x10]
call fcn.0048a9e0
push ecx
test al, 8
mov ecx, esp
je 0x450c1f
mov dword [esp + 0x14], esp
push 6
push 0x54c480
call fcn.0048a680
lea eax, [esp + 0x14c]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x450be8
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x14c]
call fcn.00405cc0
jmp case.default.0x44e13f
mov dword [esp + 0x14], esp
push 6
push 0x54c478
call fcn.0048a680
lea eax, [esp + 0x16c]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x450c4b
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x16c]
call fcn.00405cc0
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 0xb
jge 0x450d27
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x450ccd
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x450cba
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x56
call fcn.00407ba0
mov byte [esp + 0x220], 0x55
jmp 0x451428
push 0xa
lea ecx, [esp + 0x10]
call fcn.0048a9e0
push ecx
test al, 8
mov ecx, esp
je 0x450d9c
mov dword [esp + 0x14], esp
push 6
push 0x54c480
call fcn.0048a680
lea eax, [esp + 0x18c]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x450d65
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18c]
call fcn.00405cc0
jmp case.default.0x44e13f
mov dword [esp + 0x14], esp
push 6
push 0x54c478
call fcn.0048a680
lea eax, [esp + 0x1ac]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x450dc8
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x1ac]
call fcn.00405cc0
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 3
jge 0x450ea4
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x450e4a
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x450e37
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
lea ecx, [esp + 0x234]
mov dword [esp + 0x220], 0x58
call fcn.00407ba0
mov byte [esp + 0x220], 0x57
jmp 0x451428
push 2
lea ecx, [esp + 0x10]
call fcn.0048a9e0
push ecx
test al, 2
mov ecx, esp
je 0x450f19
mov dword [esp + 0x14], esp
push 6
push 0x54c480
call fcn.0048a680
lea eax, [esp + 0x1cc]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x450ee2
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x1cc]
call fcn.00405cc0
jmp case.default.0x44e13f
mov dword [esp + 0x14], esp
push 6
push 0x54c478
call fcn.0048a680
lea eax, [esp + 0x1ec]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x450f45
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x1ec]
call fcn.00405cc0
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 3
jge 0x451056
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x450fc7
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x450fb4
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
mov eax, dword [esp + 0x23c]
mov ecx, dword [esp + 0x238]
push eax
push ecx
lea ecx, [esp + 0x23c]
mov dword [esp + 0x228], 0x5a
call fcn.00405f70
mov edx, dword [esp + 0x238]
push edx
call fcn.00514120
add esp, 4
mov dword [esp + 0x238], ebx
mov dword [esp + 0x23c], ebx
mov dword [esp + 0x240], ebx
mov byte [esp + 0x220], 0x59
jmp 0x451428
push 2
lea ecx, [esp + 0x10]
call fcn.0048a9e0
push ecx
test al, 8
mov ecx, esp
je 0x4510cb
mov dword [esp + 0x14], esp
push 6
push 0x54c480
call fcn.0048a680
lea eax, [esp + 0x20c]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x451094
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x248]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x20c]
call fcn.00405cc0
jmp case.default.0x44e13f
mov dword [esp + 0x14], esp
push 6
push 0x54c478
call fcn.0048a680
lea eax, [esp + 0x44]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x4510f4
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x44]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x244]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
cmp eax, ebx
rep movsb byte es:[edi], byte [esi]
je 0x45114c
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x451143
cmp al, 0xff
je 0x451143
dec al
mov byte [ecx], al
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
jmp case.default.0x44e13f
push ecx
call fcn.00514120
add esp, 4
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
jmp case.default.0x44e13f
lea ecx, [esp + 0xc]
call fcn.0048ab50
cmp ax, 3
jge 0x45123c
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, edi
mov byte [esp + 0x220], 2
je 0x4511a8
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x451195
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
mov edi, dword [esp + 0x23c]
mov esi, dword [esp + 0x238]
cmp esi, edi
mov dword [esp + 0x220], 0x5c
je 0x451211
push ebx
mov ecx, esi
call fcn.004061f0
add esi, 4
cmp esi, edi
jne 0x4511fb
mov esi, dword [esp + 0x238]
push esi
call fcn.00514120
add esp, 4
mov dword [esp + 0x238], ebx
mov dword [esp + 0x23c], ebx
mov dword [esp + 0x240], ebx
mov byte [esp + 0x220], 0x5b
jmp 0x451428
push 2
lea ecx, [esp + 0x10]
call fcn.0048a9e0
push ecx
test al, 0x20
mov ecx, esp
je 0x4512e1
mov dword [esp + 0x14], esp
push 6
push 0x54c480
call fcn.0048a680
lea eax, [esp + 0x64]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x45127b
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x64]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x244]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
cmp eax, ebx
rep movsb byte es:[edi], byte [esi]
je 0x4512d3
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4512ca
cmp al, 0xff
je 0x4512ca
dec al
mov byte [ecx], al
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebx
jmp case.default.0x44e13f
push ecx
call fcn.00514120
add esp, 4
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebx
jmp case.default.0x44e13f
mov dword [esp + 0x14], esp
push 6
push 0x54c478
call fcn.0048a680
lea eax, [esp + 0x54]
push eax
call fcn.0049de10
mov eax, dword [eax + 4]
add esp, 8
cmp eax, ebx
jne 0x45130a
mov eax, 0x53115c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x54]
mov edx, ecx
mov esi, edi
mov edi, dword [esp + 0x244]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
cmp eax, ebx
rep movsb byte es:[edi], byte [esi]
je 0x451353
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x45134a
cmp al, 0xff
je 0x45134a
dec al
mov byte [ecx], al
jmp 0x451353
push ecx
call fcn.00514120
add esp, 4
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebx
lea ecx, [esp + 0x28]
mov byte [esp + 0x220], 3
call fcn.0048a720
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp esi, eax
mov byte [esp + 0x220], 2
mov edi, eax
je 0x451398
mov ecx, esi
call fcn.0048a720
add esi, 4
cmp esi, edi
jne 0x451386
mov esi, dword [esp + 0x1c]
push esi
call fcn.00514120
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x220], 1
call fcn.004961b0
lea ecx, [esp + 0xc]
mov byte [esp + 0x220], bl
call fcn.0048a720
mov eax, dword [esp + 0x23c]
mov esi, dword [esp + 0x238]
cmp esi, eax
mov dword [esp + 0x220], 0x5e
mov edi, eax
je 0x451402
mov ecx, esi
call fcn.0048a720
add esi, 4
cmp esi, edi
jne 0x4513ed
mov esi, dword [esp + 0x238]
push esi
call fcn.00514120
add esp, 4
mov dword [esp + 0x238], ebx
mov dword [esp + 0x23c], ebx
mov dword [esp + 0x240], ebx
mov byte [esp + 0x220], 0x5d
lea ecx, [esp + 0x230]
call fcn.0048a720
lea ecx, [esp + 0x228]
mov dword [esp + 0x220], 0xffffffff
call fcn.0048a720
mov ecx, dword [esp + 0x218]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
add esp, 0x218
ret 0x20