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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x562e0f
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x148
push ebx
push ebp
push esi
push edi
mov esi, ecx
push 0x6c
push 0xf1
push 0x10
lea ecx, [esp + 0x9c]
call fcn.00456c20
xor ebx, ebx
lea ecx, [esp + 0x6c]
mov dword [esp + 0x160], ebx
call fcn.00539ea0
lea ecx, [esp + 0x14]
mov byte [esp + 0x160], 1
call fcn.00531800
mov al, byte [esp + 0x53]
mov dword [esp + 0x1c], ebx
mov byte [esp + 0x18], al
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov al, 0xae
mov cl, 0xfc
mov byte [esp + 0x160], 3
mov byte [esp + 0x38], 4
mov byte [esp + 0x39], 0x22
mov byte [esp + 0x3a], bl
mov byte [esp + 0x3b], 0xc
mov byte [esp + 0x3c], 1
mov byte [esp + 0xb0], 4
mov byte [esp + 0xb1], 0x22
mov byte [esp + 0xb2], bl
mov byte [esp + 0xb3], 0xd
mov byte [esp + 0xb4], 1
mov byte [esp + 0xb8], 4
mov byte [esp + 0xb9], 0x22
mov byte [esp + 0xba], bl
mov byte [esp + 0xbb], 5
mov byte [esp + 0xbc], 1
mov byte [esp + 0xec], 8
mov byte [esp + 0xed], al
mov byte [esp + 0xee], 1
mov byte [esp + 0xef], bl
mov byte [esp + 0xf0], bl
mov byte [esp + 0xf1], 0x20
mov byte [esp + 0xf2], bl
mov byte [esp + 0xf3], bl
mov byte [esp + 0xf4], bl
mov byte [esp + 0xe0], 8
mov byte [esp + 0xe1], al
mov byte [esp + 0xe2], 1
mov byte [esp + 0xe3], 2
mov byte [esp + 0xe4], bl
mov byte [esp + 0xe5], 0x40
mov byte [esp + 0xe6], 0x40
mov byte [esp + 0xe7], bl
mov byte [esp + 0xe8], bl
mov byte [esp + 0xd4], 8
mov byte [esp + 0xd5], al
mov byte [esp + 0xd6], 2
mov byte [esp + 0xd7], 2
mov byte [esp + 0xd8], bl
mov byte [esp + 0xd9], 3
mov byte [esp + 0xda], cl
mov byte [esp + 0xdb], bl
mov byte [esp + 0xdc], bl
mov byte [esp + 0x40], 8
mov byte [esp + 0x41], al
mov byte [esp + 0x42], 2
mov byte [esp + 0x43], 2
mov byte [esp + 0x44], bl
mov byte [esp + 0x45], 0xe3
mov byte [esp + 0x46], cl
mov byte [esp + 0x47], bl
mov byte [esp + 0x48], 0x80
mov byte [esp + 0x54], 8
mov byte [esp + 0x66], cl
mov ecx, esi
mov byte [esp + 0x55], al
mov byte [esp + 0x56], 2
mov byte [esp + 0x57], bl
mov byte [esp + 0x58], bl
mov byte [esp + 0x59], bl
mov byte [esp + 0x5a], bl
mov byte [esp + 0x5b], bl
mov byte [esp + 0x5c], bl
mov byte [esp + 0x60], 8
mov byte [esp + 0x61], al
mov byte [esp + 0x62], 2
mov byte [esp + 0x63], 2
mov byte [esp + 0x64], bl
mov byte [esp + 0x65], 3
mov byte [esp + 0x67], bl
mov byte [esp + 0x68], bl
mov byte [esp + 0xf8], 8
mov byte [esp + 0xf9], al
mov byte [esp + 0xfa], bl
mov byte [esp + 0xfb], bl
mov byte [esp + 0xfc], bl
mov byte [esp + 0xfd], bl
mov byte [esp + 0xfe], bl
mov byte [esp + 0xff], bl
mov byte [esp + 0x100], bl
call fcn.004420c0
test ax, ax
jne 0x44004c
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x441608
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x4415ff
cmp al, 0xff
je 0x4415ff
dec al
mov byte [ecx], al
jmp 0x441608
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 4
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59c0ec
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea edx, [esp + 0xd4]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push edx
push ecx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push ecx
lea ecx, [esp + 0x70]
mov eax, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0053a3d0
lea ecx, [esp + 0x18]
call fcn.005319b0
lea ecx, [esp + 0x14]
call fcn.00531b50
test ax, ax
jne 0x44012b
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b920
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 5
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59ba20
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
jmp 0x440021
push 6
lea ecx, [esp + 0x18]
call fcn.00531ac0
test al, al
je 0x44017d
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 6
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59d0b4
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
push 0x1f4
call fcn.0043d4c0
sub esp, 0x20
lea edx, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push edx
push ecx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push ecx
lea ecx, [esp + 0x70]
mov eax, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0053a3d0
lea ecx, [esp + 0x18]
call fcn.005319b0
lea ecx, [esp + 0x14]
call fcn.00531b50
test ax, ax
jne 0x440221
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b920
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 7
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59ba20
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
jmp 0x440021
push 6
lea ecx, [esp + 0x18]
call fcn.00531ac0
test al, al
jne 0x440282
push 7
lea ecx, [esp + 0x18]
call fcn.00531ac0
test al, al
jne 0x440282
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 8
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59d0b4
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
push 0x1f4
call fcn.0043d4c0
sub esp, 0x20
lea edx, [esp + 0xdc]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push edx
push ecx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 9
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f96c
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
push 0x1f4
call fcn.0043d4c0
sub esp, 0x20
lea ecx, [esp + 0x110]
mov eax, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0x1f4
call fcn.0043d4c0
sub esp, 0x20
lea eax, [esp + 0x104]
mov edx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push eax
push edx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0x1f4
call fcn.0043d4c0
sub esp, 0x20
lea edx, [esp + 0xf8]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push edx
push ecx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0xa
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f964
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
push 0xbb8
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0xb
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f95c
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea ecx, [esp + 0x64]
mov eax, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xc4]
mov byte [esp + 0x7c], 0x80
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0x1388
call fcn.0043d4c0
add esp, 4
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
xor edi, edi
sub esp, 0x24
lea eax, [esp + 0x5c]
mov edx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push eax
push edx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push ecx
lea ecx, [esp + 0x74]
call fcn.0053a3d0
lea ecx, [esp + 0x18]
call fcn.005319b0
lea ecx, [esp + 0x14]
call fcn.00531b50
test ax, ax
je 0x440750
push 7
lea ecx, [esp + 0x18]
call fcn.00531ac0
and eax, 0xff
push 6
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
mov esi, edx
add esi, ecx
lea ecx, [esp + 0x18]
sar esi, 7
mov edx, esi
shr edx, 0x1f
add esi, edx
call fcn.00531ac0
and eax, 0xff
push 0x64
shl eax, 6
add esi, eax
mov dword [esp + 0x38], esi
fild dword [esp + 0x38]
fadd qword [esp + 0x30]
fstp qword [esp + 0x30]
call fcn.0043d4c0
add esp, 4
inc edi
cmp di, 5
jl 0x44047f
fld qword [esp + 0x2c]
fmul qword [0x573450]
push 0xbb8
fstp qword [esp + 0x11c]
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0xd
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f964
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea ecx, [esp + 0x78]
mov eax, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
sub esp, 0x24
lea eax, [esp + 0x84]
mov edx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push eax
push edx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0xfa0
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0xe
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f954
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea edx, [esp + 0x64]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push edx
push ecx
mov byte [esp + 0x7c], 0x10
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0x1388
call fcn.0043d4c0
add esp, 4
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
xor edi, edi
sub esp, 0x24
lea ecx, [esp + 0x5c]
mov eax, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push ecx
lea ecx, [esp + 0x70]
mov edx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0053a3d0
lea ecx, [esp + 0x18]
call fcn.005319b0
lea ecx, [esp + 0x14]
call fcn.00531b50
test ax, ax
je 0x440798
push 7
lea ecx, [esp + 0x18]
call fcn.00531ac0
and eax, 0xff
push 6
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
mov esi, edx
add esi, ecx
lea ecx, [esp + 0x18]
sar esi, 7
mov eax, esi
shr eax, 0x1f
add esi, eax
call fcn.00531ac0
and eax, 0xff
push 0x64
shl eax, 6
add esi, eax
mov dword [esp + 0x38], esi
fild dword [esp + 0x38]
fadd qword [esp + 0x30]
fstp qword [esp + 0x30]
call fcn.0043d4c0
add esp, 4
inc edi
cmp di, 5
jl 0x44068f
jmp 0x4407e0
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b920
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0xc
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59ba20
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
jmp 0x440021
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b920
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0xf
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59ba20
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
jmp 0x440021
fld qword [esp + 0x2c]
fmul qword [0x573450]
push 0xbb8
fstp qword [esp + 0x124]
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x10
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f964
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea edx, [esp + 0x78]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push edx
push ecx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
sub esp, 0x24
lea ecx, [esp + 0x84]
mov eax, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0xfa0
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x11
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f94c
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea eax, [esp + 0x64]
mov edx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push eax
mov byte [esp + 0x78], 1
push edx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0x1388
call fcn.0043d4c0
add esp, 4
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
xor edi, edi
sub esp, 0x24
lea edx, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push edx
push ecx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push ecx
lea ecx, [esp + 0x70]
mov eax, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0053a3d0
lea ecx, [esp + 0x18]
call fcn.005319b0
lea ecx, [esp + 0x14]
call fcn.00531b50
test ax, ax
je 0x440c05
push 7
lea ecx, [esp + 0x18]
call fcn.00531ac0
and eax, 0xff
push 6
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
mov esi, edx
add esi, ecx
sar esi, 7
mov ecx, esi
shr ecx, 0x1f
add esi, ecx
lea ecx, [esp + 0x18]
call fcn.00531ac0
and eax, 0xff
push 0x64
shl eax, 6
add esi, eax
mov dword [esp + 0x38], esi
fild dword [esp + 0x38]
fadd qword [esp + 0x30]
fstp qword [esp + 0x30]
call fcn.0043d4c0
add esp, 4
inc edi
cmp di, 5
jl 0x440934
fld qword [esp + 0x2c]
fmul qword [0x573450]
push 0xbb8
fstp qword [esp + 0x12c]
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x13
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f964
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea eax, [esp + 0x78]
mov edx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push eax
push edx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
sub esp, 0x24
lea edx, [esp + 0x84]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push edx
push ecx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0xfa0
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x14
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f944
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea ecx, [esp + 0x64]
mov eax, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push ecx
mov byte [esp + 0x78], 2
push eax
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0x1388
call fcn.0043d4c0
add esp, 4
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
xor edi, edi
sub esp, 0x24
lea eax, [esp + 0x5c]
mov edx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push eax
push edx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push ecx
lea ecx, [esp + 0x74]
call fcn.0053a3d0
lea ecx, [esp + 0x18]
call fcn.005319b0
lea ecx, [esp + 0x14]
call fcn.00531b50
test ax, ax
je 0x440c4d
push 7
lea ecx, [esp + 0x18]
call fcn.00531ac0
and eax, 0xff
push 6
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
mov esi, edx
add esi, ecx
lea ecx, [esp + 0x18]
sar esi, 7
mov edx, esi
shr edx, 0x1f
add esi, edx
call fcn.00531ac0
and eax, 0xff
push 0x64
shl eax, 6
add esi, eax
mov dword [esp + 0x38], esi
fild dword [esp + 0x38]
fadd qword [esp + 0x30]
fstp qword [esp + 0x30]
call fcn.0043d4c0
add esp, 4
inc edi
cmp di, 5
jl 0x440b44
jmp 0x440c95
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b920
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x12
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59ba20
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
jmp 0x440021
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b920
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x15
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59ba20
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
jmp 0x440021
fld qword [esp + 0x2c]
fmul qword [0x573450]
push 0xbb8
fstp qword [esp + 0x134]
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x16
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f964
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea ecx, [esp + 0x78]
mov eax, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
sub esp, 0x24
lea eax, [esp + 0x84]
mov edx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push eax
push edx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0xfa0
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x17
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f93c
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea edx, [esp + 0x64]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push edx
push ecx
mov byte [esp + 0x7c], 4
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0x1388
call fcn.0043d4c0
add esp, 4
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
xor edi, edi
sub esp, 0x24
lea ecx, [esp + 0x5c]
mov eax, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push ecx
lea ecx, [esp + 0x70]
mov edx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0053a3d0
lea ecx, [esp + 0x18]
call fcn.005319b0
lea ecx, [esp + 0x14]
call fcn.00531b50
test ax, ax
je 0x4410ba
push 7
lea ecx, [esp + 0x18]
call fcn.00531ac0
and eax, 0xff
push 6
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
mov esi, edx
add esi, ecx
lea ecx, [esp + 0x18]
sar esi, 7
mov eax, esi
shr eax, 0x1f
add esi, eax
call fcn.00531ac0
and eax, 0xff
push 0x64
shl eax, 6
add esi, eax
mov dword [esp + 0x38], esi
fild dword [esp + 0x38]
fadd qword [esp + 0x30]
fstp qword [esp + 0x30]
call fcn.0043d4c0
add esp, 4
inc edi
cmp di, 5
jl 0x440de9
fld qword [esp + 0x2c]
fmul qword [0x573450]
push 0xbb8
fstp qword [esp + 0x13c]
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x19
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f964
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea edx, [esp + 0x78]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push edx
push ecx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
sub esp, 0x24
lea ecx, [esp + 0x84]
mov eax, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0xfa0
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x1a
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f934
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea eax, [esp + 0x64]
mov edx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push eax
mov byte [esp + 0x78], 8
push edx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0x1388
call fcn.0043d4c0
add esp, 4
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
xor edi, edi
sub esp, 0x24
lea edx, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push edx
push ecx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push ecx
lea ecx, [esp + 0x70]
mov eax, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0053a3d0
lea ecx, [esp + 0x18]
call fcn.005319b0
lea ecx, [esp + 0x14]
call fcn.00531b50
test ax, ax
je 0x441102
push 7
lea ecx, [esp + 0x18]
call fcn.00531ac0
and eax, 0xff
push 6
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
mov esi, edx
add esi, ecx
sar esi, 7
mov ecx, esi
shr ecx, 0x1f
add esi, ecx
lea ecx, [esp + 0x18]
call fcn.00531ac0
and eax, 0xff
push 0x64
shl eax, 6
add esi, eax
mov dword [esp + 0x38], esi
fild dword [esp + 0x38]
fadd qword [esp + 0x30]
fstp qword [esp + 0x30]
call fcn.0043d4c0
add esp, 4
inc edi
cmp di, 5
jl 0x440ff9
jmp 0x44114a
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b920
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x18
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59ba20
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
jmp 0x440021
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b920
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x1b
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59ba20
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
jmp 0x440021
fld qword [esp + 0x2c]
fmul qword [0x573450]
push 0xbb8
fstp qword [esp + 0x144]
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f964
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea eax, [esp + 0x78]
mov edx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push eax
push edx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
sub esp, 0x24
lea edx, [esp + 0x84]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push edx
push ecx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0xfa0
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x1d
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f92c
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea ecx, [esp + 0x64]
mov eax, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push ecx
mov byte [esp + 0x78], 0x20
push eax
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0x1388
call fcn.0043d4c0
add esp, 4
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
xor edi, edi
sub esp, 0x24
lea eax, [esp + 0x5c]
mov edx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push eax
push edx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push ecx
lea ecx, [esp + 0x74]
call fcn.0053a3d0
lea ecx, [esp + 0x18]
call fcn.005319b0
lea ecx, [esp + 0x14]
call fcn.00531b50
test ax, ax
je 0x44156f
push 7
lea ecx, [esp + 0x18]
call fcn.00531ac0
and eax, 0xff
push 6
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
mov esi, edx
add esi, ecx
lea ecx, [esp + 0x18]
sar esi, 7
mov edx, esi
shr edx, 0x1f
add esi, edx
call fcn.00531ac0
and eax, 0xff
push 0x64
shl eax, 6
add esi, eax
mov dword [esp + 0x38], esi
fild dword [esp + 0x38]
fadd qword [esp + 0x30]
fstp qword [esp + 0x30]
call fcn.0043d4c0
add esp, 4
inc edi
cmp di, 5
jl 0x44129e
fld qword [esp + 0x2c]
fmul qword [0x573450]
push 0xbb8
fstp qword [esp + 0x14c]
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x1f
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f964
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea ecx, [esp + 0x78]
mov eax, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
sub esp, 0x24
lea eax, [esp + 0x84]
mov edx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push eax
push edx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0xfa0
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x20
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f924
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea edx, [esp + 0x64]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push edx
push ecx
mov byte [esp + 0x7c], 0x40
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0x1388
call fcn.0043d4c0
add esp, 4
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
xor edi, edi
sub esp, 0x24
lea ecx, [esp + 0x5c]
mov eax, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push ecx
lea ecx, [esp + 0x70]
mov edx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0053a3d0
lea ecx, [esp + 0x18]
call fcn.005319b0
lea ecx, [esp + 0x14]
call fcn.00531b50
test ax, ax
je 0x4415b7
push 7
lea ecx, [esp + 0x18]
call fcn.00531ac0
and eax, 0xff
push 6
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
mov esi, edx
add esi, ecx
lea ecx, [esp + 0x18]
sar esi, 7
mov eax, esi
shr eax, 0x1f
add esi, eax
call fcn.00531ac0
and eax, 0xff
push 0x64
shl eax, 6
add esi, eax
mov dword [esp + 0x38], esi
fild dword [esp + 0x38]
fadd qword [esp + 0x30]
fstp qword [esp + 0x30]
call fcn.0043d4c0
add esp, 4
inc edi
cmp di, 5
jl 0x4414ae
jmp 0x441665
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b920
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x1e
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59ba20
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
jmp 0x440021
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b920
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x21
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59ba20
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
jmp 0x440021
push ecx
call fcn.00556360
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x160], 1
call fcn.00531940
lea ecx, [esp + 0x6c]
mov byte [esp + 0x160], bl
call fcn.00539fa0
lea ecx, [esp + 0x90]
mov dword [esp + 0x160], 0xffffffff
call fcn.00456930
xor ax, ax
mov ecx, dword [esp + 0x158]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
fld qword [esp + 0x2c]
fmul qword [0x573450]
push 0xbb8
fstp qword [esp + 0x154]
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x22
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f964
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
sub esp, 0x24
lea edx, [esp + 0x78]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push edx
push ecx
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
sub esp, 0x24
lea ecx, [esp + 0x11c]
mov eax, esp
mov dword [esp + 0x34], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xc4]
call fcn.00456940
lea ecx, [esp + 0x90]
call fcn.0053a050
push 0x7d0
call fcn.0043d4c0
add esp, 4
push ebx
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b910
call fcn.005318a0
push ecx
mov byte [esp + 0x170], 0x23
mov ecx, esp
mov dword [esp + 0x38], esp
push 6
push 0x59f91c
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x170], 3
call fcn.00533b90
fld qword [esp + 0x118]
call fcn.00556e88
fld qword [esp + 0x120]
mov dword [esp + 0x34], eax
call fcn.00556e88
fld qword [esp + 0x128]
mov dword [esp + 0x108], eax
call fcn.00556e88
fld qword [esp + 0x130]
mov dword [esp + 0x10c], eax
call fcn.00556e88
fld qword [esp + 0x138]
mov dword [esp + 0x114], eax
call fcn.00556e88
fld qword [esp + 0x140]
mov dword [esp + 0x110], eax
call fcn.00556e88
fld qword [esp + 0x148]
mov dword [esp + 0x104], eax
call fcn.00556e88
fld qword [esp + 0x150]
mov dword [esp + 0x28], eax
call fcn.00556e88
mov dword [esp + 0x10], eax
push ebx
lea edx, [esp + 0x57]
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
push 0x5c65b8
call fcn.00404840
push ecx
mov byte [esp + 0x178], 0x24
mov ecx, esp
mov dword [esp + 0x44], esp
push 6
push 0x59f914
call fcn.005318a0
mov ecx, dword [0x5c6630]
mov byte [esp + 0x178], 3
call fcn.00534800
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0xc0]
push eax
push 0x59bb6c
push ecx
call fcn.00556aa4
lea edi, [esp + 0xcc]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
cmp ebp, 0xfffffffd
jbe 0x441878
call fcn.0055636b
mov edi, dword [esp + 0x1c]
cmp edi, ebx
je 0x4418a0
mov al, byte [edi - 1]
cmp al, bl
je 0x4418a0
cmp al, 0xff
je 0x4418a0
cmp ebp, ebx
jne 0x4418c9
dec al
push ebx
lea ecx, [esp + 0x1c]
mov byte [edi - 1], al
call fcn.00404bb0
jmp 0x4418f9
cmp ebp, ebx
jne 0x4418b1
push 1
lea ecx, [esp + 0x1c]
call fcn.00404bb0
jmp 0x4418f9
mov eax, dword [esp + 0x24]
cmp eax, 0x1f
ja 0x4418be
cmp eax, ebp
jae 0x4418d7
push 1
lea ecx, [esp + 0x1c]
call fcn.00404bb0
push ebp
lea ecx, [esp + 0x1c]
call fcn.00405100
mov edi, dword [esp + 0x1c]
mov ecx, ebp
lea esi, [esp + 0xc0]
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 + 0x1c]
mov dword [esp + 0x20], ebp
mov byte [eax + ebp], bl
push ebx
push 0xffff
sub esp, 0x10
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.00404720
push ecx
mov byte [esp + 0x17c], 0x25
mov ecx, esp
mov dword [esp + 0x68], esp
push 6
push 0x59f90c
call fcn.005318a0
mov ecx, dword [0x5c6630]
mov byte [esp + 0x17c], 3
call fcn.005348d0
mov eax, dword [esp + 0x108]
lea ecx, [esp + 0xc0]
push eax
push 0x59bb6c
push ecx
call fcn.00556aa4
lea edi, [esp + 0xcc]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
cmp ebp, 0xfffffffd
jbe 0x44197a
call fcn.0055636b
mov edi, dword [esp + 0x1c]
cmp edi, ebx
je 0x4419a4
mov al, byte [edi - 1]
cmp al, bl
je 0x4419a4
cmp al, 0xff
je 0x4419a4
cmp ebp, ebx
jne 0x4419cd
dec al
mov byte [edi - 1], al
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
jmp 0x4419fd
cmp ebp, ebx
jne 0x4419b5
push 1
lea ecx, [esp + 0x1c]
call fcn.00404bb0
jmp 0x4419fd
mov eax, dword [esp + 0x24]
cmp eax, 0x1f
ja 0x4419c2
cmp eax, ebp
jae 0x4419db
push 1
lea ecx, [esp + 0x1c]
call fcn.00404bb0
push ebp
lea ecx, [esp + 0x1c]
call fcn.00405100
mov edi, dword [esp + 0x1c]
mov ecx, ebp
lea esi, [esp + 0xc0]
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 + 0x1c]
mov dword [esp + 0x20], ebp
mov byte [eax + ebp], bl
push ebx
push 0xffff
sub esp, 0x10
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.00404720
push ecx
mov byte [esp + 0x17c], 0x26
mov ecx, esp
mov dword [esp + 0x68], esp
push 6
push 0x59f904
call fcn.005318a0
mov ecx, dword [0x5c6630]
mov byte [esp + 0x17c], 3
call fcn.005348d0
mov eax, dword [esp + 0x10c]
lea ecx, [esp + 0xc0]
push eax
push 0x59bb6c
push ecx
call fcn.00556aa4
lea edi, [esp + 0xcc]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
cmp ebp, 0xfffffffd
jbe 0x441a7e
call fcn.0055636b
mov edi, dword [esp + 0x1c]
cmp edi, ebx
je 0x441aa8
mov al, byte [edi - 1]
cmp al, bl
je 0x441aa8
cmp al, 0xff
je 0x441aa8
cmp ebp, ebx
jne 0x441ad1
dec al
mov byte [edi - 1], al
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
jmp 0x441b01
cmp ebp, ebx
jne 0x441ab9
push 1
lea ecx, [esp + 0x1c]
call fcn.00404bb0
jmp 0x441b01
mov eax, dword [esp + 0x24]
cmp eax, 0x1f
ja 0x441ac6
cmp eax, ebp
jae 0x441adf
push 1
lea ecx, [esp + 0x1c]
call fcn.00404bb0
push ebp
lea ecx, [esp + 0x1c]
call fcn.00405100
mov edi, dword [esp + 0x1c]
mov ecx, ebp
lea esi, [esp + 0xc0]
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 + 0x1c]
mov dword [esp + 0x20], ebp
mov byte [eax + ebp], bl
push ebx
push 0xffff
sub esp, 0x10
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.00404720
push ecx
mov byte [esp + 0x17c], 0x27
mov ecx, esp
mov dword [esp + 0x68], esp
push 6
push 0x59f8fc
call fcn.005318a0
mov ecx, dword [0x5c6630]
mov byte [esp + 0x17c], 3
call fcn.005348d0
mov eax, dword [esp + 0x114]
lea ecx, [esp + 0xc0]
push eax
push 0x59bb6c
push ecx
call fcn.00556aa4
lea edi, [esp + 0xcc]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
cmp ebp, 0xfffffffd
jbe 0x441b82
call fcn.0055636b
mov edi, dword [esp + 0x1c]
cmp edi, ebx
je 0x441bac
mov al, byte [edi - 1]
cmp al, bl
je 0x441bac
cmp al, 0xff
je 0x441bac
cmp ebp, ebx
jne 0x441bd5
dec al
mov byte [edi - 1], al
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
jmp 0x441c05
cmp ebp, ebx
jne 0x441bbd
push 1
lea ecx, [esp + 0x1c]
call fcn.00404bb0
jmp 0x441c05
mov eax, dword [esp + 0x24]
cmp eax, 0x1f
ja 0x441bca
cmp eax, ebp
jae 0x441be3
push 1
lea ecx, [esp + 0x1c]
call fcn.00404bb0
push ebp
lea ecx, [esp + 0x1c]
call fcn.00405100
mov edi, dword [esp + 0x1c]
mov ecx, ebp
lea esi, [esp + 0xc0]
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 + 0x1c]
mov dword [esp + 0x20], ebp
mov byte [eax + ebp], bl
push ebx
push 0xffff
sub esp, 0x10
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.00404720
push ecx
mov byte [esp + 0x17c], 0x28
mov ecx, esp
mov dword [esp + 0x68], esp
push 6
push 0x59f8f4
call fcn.005318a0
mov ecx, dword [0x5c6630]
mov byte [esp + 0x17c], 3
call fcn.005348d0
mov eax, dword [esp + 0x110]
lea ecx, [esp + 0xc0]
push eax
push 0x59bb6c
push ecx
call fcn.00556aa4
lea edi, [esp + 0xcc]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
cmp ebp, 0xfffffffd
jbe 0x441c86
call fcn.0055636b
mov edi, dword [esp + 0x1c]
cmp edi, ebx
je 0x441ca4
mov al, byte [edi - 1]
cmp al, bl
je 0x441ca4
cmp al, 0xff
je 0x441ca4
cmp ebp, ebx
jne 0x441cef
dec al
mov byte [edi - 1], al
jmp 0x441cc9
cmp ebp, ebx
jne 0x441cd7
cmp edi, ebx
je 0x441cc9
mov al, byte [edi - 1]
lea ecx, [edi - 1]
cmp al, bl
je 0x441cc0
cmp al, 0xff
je 0x441cc0
dec al
mov byte [ecx], al
jmp 0x441cc9
push ecx
call fcn.00556360
add esp, 4
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
jmp 0x441d1f
mov eax, dword [esp + 0x24]
cmp eax, 0x1f
ja 0x441ce4
cmp eax, ebp
jae 0x441cfd
push 1
lea ecx, [esp + 0x1c]
call fcn.00404bb0
push ebp
lea ecx, [esp + 0x1c]
call fcn.00405100
mov edi, dword [esp + 0x1c]
mov ecx, ebp
lea esi, [esp + 0xc0]
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 + 0x1c]
mov dword [esp + 0x20], ebp
mov byte [eax + ebp], bl
push ebx
push 0xffff
sub esp, 0x10
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.00404720
push ecx
mov byte [esp + 0x17c], 0x29
mov ecx, esp
mov dword [esp + 0x68], esp
push 6
push 0x59f8ec
call fcn.005318a0
mov ecx, dword [0x5c6630]
mov byte [esp + 0x17c], 3
call fcn.005348d0
mov eax, dword [esp + 0x104]
lea ecx, [esp + 0xc0]
push eax
push 0x59bb6c
push ecx
call fcn.00556aa4
lea edi, [esp + 0xcc]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
cmp ebp, 0xfffffffd
jbe 0x441da0
call fcn.0055636b
mov edi, dword [esp + 0x1c]
cmp edi, ebx
je 0x441dbe
mov al, byte [edi - 1]
cmp al, bl
je 0x441dbe
cmp al, 0xff
je 0x441dbe
cmp ebp, ebx
jne 0x441e09
dec al
mov byte [edi - 1], al
jmp 0x441de3
cmp ebp, ebx
jne 0x441df1
cmp edi, ebx
je 0x441de3
mov al, byte [edi - 1]
lea ecx, [edi - 1]
cmp al, bl
je 0x441dda
cmp al, 0xff
je 0x441dda
dec al
mov byte [ecx], al
jmp 0x441de3
push ecx
call fcn.00556360
add esp, 4
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
jmp 0x441e39
mov eax, dword [esp + 0x24]
cmp eax, 0x1f
ja 0x441dfe
cmp eax, ebp
jae 0x441e17
push 1
lea ecx, [esp + 0x1c]
call fcn.00404bb0
push ebp
lea ecx, [esp + 0x1c]
call fcn.00405100
mov edi, dword [esp + 0x1c]
mov ecx, ebp
lea esi, [esp + 0xc0]
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 + 0x1c]
mov dword [esp + 0x20], ebp
mov byte [eax + ebp], bl
push ebx
push 0xffff
sub esp, 0x10
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.00404720
push ecx
mov byte [esp + 0x17c], 0x2a
mov ecx, esp
mov dword [esp + 0x68], esp
push 6
push 0x59f8e4
call fcn.005318a0
mov ecx, dword [0x5c6630]
mov byte [esp + 0x17c], 3
call fcn.005348d0
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0xc0]
push eax
push 0x59bb6c
push ecx
call fcn.00556aa4
lea edi, [esp + 0xcc]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
cmp esi, 0xfffffffd
jbe 0x441eb7
call fcn.0055636b
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x441ed6
mov cl, byte [eax - 1]
cmp cl, bl
je 0x441ed6
cmp cl, 0xff
je 0x441ed6
cmp esi, ebx
jne 0x441f43
dec cl
mov byte [eax - 1], cl
jmp 0x441efb
cmp esi, ebx
jne 0x441f09
cmp eax, ebx
je 0x441efb
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x441ef2
cmp al, 0xff
je 0x441ef2
dec al
mov byte [ecx], al
jmp 0x441efb
push ecx
call fcn.00556360
add esp, 4
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
jmp 0x441f6d
mov ecx, dword [esp + 0x24]
cmp ecx, 0x1f
ja 0x441f16
cmp ecx, esi
jae 0x441f51
cmp eax, ebx
je 0x441f37
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x441f2e
cmp al, 0xff
je 0x441f2e
dec al
mov byte [ecx], al
jmp 0x441f37
push ecx
call fcn.00556360
add esp, 4
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
push esi
lea ecx, [esp + 0x1c]
call fcn.00405100
mov eax, dword [esp + 0x1c]
lea edx, [esp + 0xc0]
push esi
push edx
push eax
call fcn.0040a2d0
add esp, 0xc
lea ecx, [esp + 0x18]
push esi
call fcn.00404d50
push ebx
push 0xffff
sub esp, 0x10
lea eax, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
call fcn.00404720
push ecx
mov byte [esp + 0x17c], 0x2b
mov ecx, esp
mov dword [esp + 0x68], esp
push 6
push 0x59f8dc
call fcn.005318a0
mov ecx, dword [0x5c6630]
mov byte [esp + 0x17c], 3
call fcn.005348d0
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0xc0]
push ecx
push 0x59bb6c
push edx
call fcn.00556aa4
add esp, 0xc
lea eax, [esp + 0xc0]
lea ecx, [esp + 0x18]
push eax
call fcn.00418780
push ebx
push 0xffff
sub esp, 0x10
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.00404720
push ecx
mov byte [esp + 0x17c], 0x2c
mov ecx, esp
mov dword [esp + 0x68], esp
push 6
push 0x59f8d4
call fcn.005318a0
mov ecx, dword [0x5c6630]
mov byte [esp + 0x17c], 3
call fcn.005348d0
mov ecx, dword [0x5c6630]
push ebx
call fcn.00534b00
cmp ax, 0xb
jne 0x4417fa
lea ecx, [esp + 0x18]
mov byte [esp + 0x160], 2
call fcn.00404900
lea ecx, [esp + 0x14]
mov byte [esp + 0x160], 1
call fcn.00531940
lea ecx, [esp + 0x6c]
mov byte [esp + 0x160], bl
call fcn.00539fa0
lea ecx, [esp + 0x90]
mov dword [esp + 0x160], 0xffffffff
call fcn.00456930
mov ecx, dword [esp + 0x158]
pop edi
mov ax, 1
mov dword fs:[0], ecx
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret