Function at 0x504e44
Capabilities:
Check for software breakpoints
Parse pe header

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff90
push ebx
push esi
push edi
xor eax, eax
mov dword [ebp - 8], eax
xor eax, eax
push ebp
push 0x5066f9
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x18]
add eax, 0xcd
mov dword [ebp - 0x10], eax
mov eax, dword [0x5329d0]
add eax, 0xe5
mov dword [0x53294c], eax
mov eax, 0xe3
sub eax, dword [0x532a18]
mov dword [0x5329b4], eax
mov eax, dword [0x5328ac]
add eax, 4
mov dword [0x5329e8], eax
mov eax, dword [0x5328ec]
add eax, 0x7a
mov dword [0x532a48], eax
mov eax, dword [0x532944]
add eax, 0x78
mov dword [0x53288c], eax
xor eax, eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x1c]
add eax, 0xf
mov dword [ebp - 0x14], eax
mov eax, dword [0x532984]
mov dword [0x532934], eax
fild dword [0x5329e0]
call fcn.0040822c
mov dword [0x53297c], eax
imul eax, dword [0x532a30], 0xd8
mov dword [0x5329e0], eax
lea eax, [ebp - 8]
mov edx, 0x506718
call fcn.0040ac1c
xor eax, eax
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 8]
mov edx, 0x506764
call fcn.0040ac1c
mov eax, dword [0x5329bc]
mov dword [0x5328a4], eax
mov eax, dword [0x5329bc]
mov dword [0x5328a4], eax
mov eax, dword [0x5328b4]
call fcn.00407df4
mov dword [0x5328b4], eax
mov eax, dword [ebp - 0x14]
sub eax, 0x10
mov dword [ebp - 0x10], eax
mov eax, dword [0x532914]
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
je 0x504f4c
mov eax, dword [ebp - 0x40]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0x56
jle 0x504f61
mov eax, dword [0x53285c]
shl eax, 2
mov dword [0x532944], eax
jmp 0x504f71
mov eax, dword [0x5329f8]
imul dword [0x532974]
mov dword [0x5329c4], eax
xor eax, eax
push ebp
push 0x506550
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x532a40]
push eax
mov ecx, dword [ebp - 0xc]
mov edx, dword [0x5328b4]
mov eax, dword [0x5328b4]
call fcn.004fe8f8
mov dword [0x5328ac], eax
mov eax, dword [0x5328b4]
call fcn.00407df4
mov dword [0x5328b4], eax
mov eax, dword [0x532a30]
mov dword [0x5328c4], eax
fild dword [ebp - 0x18]
call fcn.0040822c
mov dword [ebp - 0x10], eax
mov eax, dword [0x5329c4]
add eax, 0x60
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.0040822c
mov dword [0x53293c], eax
mov eax, dword [0x5328fc]
mov dword [0x53295c], eax
mov eax, dword [0x5328b4]
mov dword [0x53296c], eax
mov eax, dword [0x53296c]
cmp eax, dword [0x53295c]
jge 0x505004
mov eax, dword [0x5328ac]
mov dword [0x5329d8], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x20], eax
mov edx, dword [ebp - 0xc]
mov eax, dword [0x53296c]
call fcn.00504d08
mov dword [0x53294c], eax
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xa
jge 0x505077
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
sub eax, 0x5d
mov dword [ebp - 0x1c], eax
imul eax, dword [0x5329d8], 0x55
mov dword [0x53296c], eax
fild dword [0x5329d0]
call fcn.00408238
mov dword [0x5329d8], eax
mov eax, 0x5a
sub eax, dword [0x53293c]
cmp eax, 0x20
jge 0x505077
mov eax, dword [0x5328b4]
add eax, dword [0x532a18]
mov dword [0x53286c], eax
jmp 0x505077
mov edx, dword [0x53295c]
mov eax, dword [ebp - 0x18]
call fcn.004f915c
mov eax, dword [0x5328e4]
sub eax, dword [0x532984]
mov dword [0x5328fc], eax
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x14]
jne 0x5050ae
imul eax, dword [0x532894], 0x7d
mov dword [0x53297c], eax
jmp 0x5050dc
mov eax, dword [0x5329c4]
cmp eax, dword [0x532934]
jle 0x5050cd
mov eax, dword [0x5328cc]
sub eax, dword [0x5329e0]
mov dword [0x532a40], eax
jmp 0x5050dc
mov eax, dword [str.sw1_a]
call fcn.00407df4
mov dword [str.sw1_a], eax
mov eax, dword [ebp - 0x20]
cmp word [eax], 0x5a4d
je 0x505174
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5072e3
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x10], eax
mov eax, dword [0x5328f4]
call fcn.00407df4
mov dword [0x5328f4], eax
xor eax, eax
mov dword [ebp - 0xc], eax
imul eax, dword [0x532a40], 0x5e
mov dword [0x532974], eax
mov eax, dword [0x53298c]
call fcn.00407df4
mov dword [0x53298c], eax
mov eax, dword [0x5329d8]
add eax, 4
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.00408238
mov dword [0x5329e8], eax
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xd
jne 0x50518e
mov eax, dword [0x532904]
add eax, dword [0x532974]
mov dword [0x532874], eax
fild dword [0x532964]
call fcn.00408238
mov dword [0x5328b4], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
add eax, dword [ebp + 8]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
mov eax, dword [0x532984]
add eax, 0x5b
cmp eax, dword [0x5328ec]
jge 0x505216
mov eax, dword [0x53285c]
mov dword [0x5329b4], eax
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 6
jge 0x50524b
inc dword [ebp - 0x10]
xor eax, eax
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 8]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.0040b7d8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xd
jne 0x505229
cmp dword [ebp - 0x10], 6
jl 0x505221
mov eax, dword [0x5329d8]
sub eax, dword [0x532a30]
mov dword [0x5328cc], eax
mov eax, dword [str.sw1_a]
sub eax, dword [0x5328cc]
mov dword [0x532904], eax
fild dword [0x5328bc]
call fcn.00408238
mov dword [0x532964], eax
mov eax, dword [ebp - 0x24]
cmp dword [eax], 0x4550
je 0x50532b
mov eax, dword [0x532864]
call fcn.00407df4
mov dword [0x532864], eax
xor eax, eax
mov dword [ebp - 0xc], eax
mov edx, dword [ebp - 0x14]
mov eax, dword [0x5328ac]
call fcn.00504d08
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x1c]
add eax, 0x35
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.0040822c
mov dword [ebp - 0x14], eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
call fcn.004f915c
mov dword [0x53292c], eax
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 6
jne 0x50529e
mov eax, dword [0x53297c]
add eax, dword [0x5328c4]
mov dword [0x532974], eax
mov eax, dword [0x532a48]
sub dword [0x5329d8], eax
mov eax, dword [0x532a30]
add eax, 4
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.00408238
mov dword [0x532a30], eax
mov eax, dword [0x53286c]
sub eax, dword [0x5328fc]
mov dword [0x532874], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5072e3
mov eax, dword [ebp - 0x24]
cmp word [eax + 4], 0x14c
je 0x5053ee
mov eax, dword [0x53289c]
mov dword [0x5328dc], eax
mov eax, dword [ebp - 0x1c]
imul dword [ebp - 0x18]
mov dword [ebp - 0x10], eax
fild dword [0x5329e8]
call fcn.0040822c
mov dword [0x53296c], eax
mov eax, dword [0x532934]
mov dword [0x532984], eax
mov eax, dword [0x5329e0]
sub eax, dword [0x53288c]
mov dword [0x5329d8], eax
mov eax, dword [0x532a00]
imul eax, dword [0x532a30]
mov dword [0x532a30], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5072e3
mov eax, dword [ebp - 0x18]
add eax, 0xb1
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.0040822c
mov dword [ebp - 0x14], eax
mov eax, dword [0x5329c4]
sub eax, 0x15
mov dword [0x53297c], eax
mov eax, dword [0x5328fc]
mov dword [0x5329ac], eax
fild dword [0x5329bc]
call fcn.0040822c
mov dword [0x5329e8], eax
mov eax, dword [0x532864]
sub eax, 0x12
mov dword [0x532a30], eax
mov eax, dword [0x532a50]
sub eax, dword [0x5329b4]
mov edx, dword [0x5328f4]
sub edx, dword [0x5329b4]
cmp eax, edx
jle 0x505462
lea eax, [ebp - 8]
mov edx, 0x50678c
call fcn.0040ac1c
jmp 0x50546c
call fcn.00501b78
mov dword [0x532a28], eax
mov eax, dword [ebp - 0x1c]
add eax, 0x6a
mov dword [ebp - 0x14], eax
mov eax, dword [0x53290c]
add eax, 0xd6
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.0040822c
mov dword [0x5329d8], eax
mov eax, dword [0x53296c]
add eax, 0xd4
mov dword [0x532a38], eax
mov eax, dword [0x532a28]
mov dword [0x53286c], eax
mov eax, dword [0x53286c]
add eax, 0x6b
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.0040822c
mov dword [0x5328ac], eax
mov eax, dword [0x5329b4]
mov dword [0x5328cc], eax
mov eax, dword [ebp - 0x24]
test byte [eax + 0x38], 1
je 0x50560a
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5072e3
mov eax, dword [0x532a40]
mov dword [0x5329c4], eax
mov eax, dword [0x5329e0]
mov dword [0x5329d0], eax
mov eax, dword [0x5329c4]
cmp eax, dword [0x5329d0]
jge 0x50566a
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 7
jge 0x505699
inc dword [ebp - 0x1c]
mov ecx, 1
mov edx, dword [0x532a20]
mov eax, 0x5067e0
call fcn.0040b9e8
cmp eax, 0x3c
jge 0x505662
mov eax, dword [0x532884]
call fcn.00407df4
mov dword [0x532884], eax
cmp dword [ebp - 0x1c], 7
jl 0x505636
jmp 0x505699
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x18]
mov dword [ebp - 0x10], eax
mov eax, dword [0x5328b4]
mov dword [0x532904], eax
mov eax, 0xd8
sub eax, dword [0x5328f4]
mov dword [0x53296c], eax
imul eax, dword [0x5328ec], 0x3c
mov dword [0x5329d8], eax
lea eax, [ebp - 8]
mov edx, dword [ebp - 8]
call fcn.0040ac1c
mov eax, 0x6d
sub eax, dword [0x532a48]
mov dword [0x53285c], eax
mov eax, dword [0x5329e8]
mov dword [0x53286c], eax
mov eax, dword [0x532874]
sub eax, dword [0x532984]
cmp eax, 0xd
jge 0x5056f5
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [0x532964]
push eax
mov eax, dword [0x53298c]
push eax
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x10]
mov eax, dword [0x5328ac]
call fcn.004f939c
mov dword [0x53285c], eax
jmp 0x5056ff
mov eax, dword [0x5329d8]
mov dword [0x53290c], eax
imul eax, dword [0x53296c], 0x66
mov dword [0x532984], eax
push 4
push 0x3000
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0x50]
push eax
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0x34]
push eax
call dword [0x532980]
mov dword [ebp - 0x28], eax
push 0x5329e8
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x18]
push eax
mov ecx, 0x532894
lea edx, [ebp - 0x1c]
mov eax, 0x532a30
call fcn.00503728
mov dword [0x5328c4], eax
fild dword [ebp - 0x14]
call fcn.00408238
mov dword [ebp - 0x10], eax
push 0x532984
lea eax, [ebp - 0x14]
push eax
push 0x532984
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x18]
lea edx, [ebp - 0x10]
mov eax, 0x5328fc
call fcn.004f8b80
mov dword [0x5329e0], eax
mov eax, dword [0x5328fc]
sub eax, dword [0x532a48]
cmp eax, 0xcc
jge 0x50579b
mov eax, dword [0x532894]
mov dword [0x53292c], eax
mov ecx, 1
mov edx, dword [0x53299c]
mov eax, 0x506808
call fcn.0040b9e8
cmp eax, 0x88
je 0x5057c1
mov eax, dword [0x53288c]
mov dword [0x532984], eax
fild dword [0x532884]
call fcn.0040822c
mov dword [0x5329f8], eax
cmp dword [ebp - 0x28], 0
jne 0x505a5d
push 4
push 0x3000
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0x50]
push eax
push 0
call dword [0x532980]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x1c]
mov edx, eax
shl eax, 5
add eax, edx
mov dword [ebp - 0x14], eax
mov eax, dword [0x5328ec]
mov dword [0x53294c], eax
mov eax, dword [0x5328a4]
mov dword [0x532964], eax
imul eax, dword [0x5328e4], 0xb7
mov dword [0x5329bc], eax
imul eax, dword [0x53293c], 0xb6
mov dword [0x532a08], eax
mov eax, dword [0x532984]
add eax, dword [0x5329c4]
mov dword [0x532864], eax
cmp dword [ebp - 0x28], 0
jne 0x5059a0
mov eax, dword [ebp - 0x10]
lea eax, [eax + eax*2]
mov dword [ebp - 0x14], eax
mov eax, dword [0x5329f8]
push eax
mov ecx, dword [ebp - 0x10]
mov edx, dword [0x5329e0]
mov eax, dword [ebp - 0x10]
call fcn.004fe8f8
mov dword [0x5328bc], eax
mov eax, dword [0x53297c]
call fcn.00407df4
mov dword [0x53297c], eax
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jge 0x5058de
inc dword [ebp - 0x18]
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 5
jge 0x5058ce
inc dword [ebp - 0x1c]
mov ecx, 1
mov edx, dword [0x532a20]
mov eax, 0x506828
call fcn.0040b9e8
cmp eax, 8
je 0x5058be
call fcn.00501b78
jmp 0x5058c8
mov eax, dword [0x532a40]
mov dword [0x53290c], eax
cmp dword [ebp - 0x1c], 5
jl 0x50589a
mov eax, dword [0x53296c]
mov dword [0x532a18], eax
cmp dword [ebp - 0x18], 0
jl 0x50588c
mov eax, dword [0x532a28]
mov dword [0x532a50], eax
mov eax, dword [0x5328b4]
add eax, dword [0x53297c]
mov dword [0x53288c], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5072e3
fild dword [ebp - 0x14]
call fcn.0040822c
mov dword [ebp - 0x18], eax
mov eax, dword [0x532964]
sub eax, dword [0x532a50]
mov dword [0x5329f8], eax
mov eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x1c]
jne 0x505a2b
mov eax, dword [0x5329bc]
mov dword [0x532a48], eax
mov eax, dword [0x53285c]
call fcn.00407df4
mov dword [0x53285c], eax
mov eax, dword [0x53285c]
cmp eax, dword [0x532a48]
jle 0x505a0f
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 0xc]
push eax
mov ecx, 0x532a08
mov edx, 0x5329ac
lea eax, [ebp - 0x14]
call fcn.004ec1bc
mov dword [0x532a18], eax
imul eax, dword [0x5329ac], 0x7d
mov dword [0x5328ec], eax
fild dword [0x53298c]
call fcn.00408238
mov dword [0x53295c], eax
mov eax, dword [0x532984]
imul dword [0x532a28]
mov dword [0x5329c4], eax
mov eax, dword [0x5329d8]
mov dword [0x532a28], eax
mov eax, dword [str.sw1_a]
add eax, 4
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.00408238
mov dword [0x53285c], eax
push 0x1c
push 8
call dword [0x5329dc]
push eax
call dword [0x532970]
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0
jne 0x505dd0
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x18]
jge 0x505b05
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xa
jge 0x505af5
inc dword [ebp - 0x1c]
mov eax, dword [0x5329f8]
mov dword [0x532a50], eax
mov eax, dword [0x53298c]
mov dword [0x53285c], eax
mov eax, dword [0x53285c]
cmp eax, dword [0x532a50]
jle 0x505abc
imul eax, dword [ebp - 0x18], 0x6c
mov dword [ebp - 0xc], eax
xor eax, eax
mov dword [ebp - 0x10], eax
mov eax, dword [0x5329d0]
add eax, 0x66
mov dword [0x532964], eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x10
jne 0x505ac1
mov eax, dword [0x5328fc]
add eax, 4
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.00408238
mov dword [0x5329e8], eax
cmp dword [ebp - 0x1c], 0xa
jl 0x505a91
mov eax, dword [0x532864]
add eax, dword [0x53289c]
mov dword [0x53286c], eax
mov eax, dword [0x5329f8]
mov dword [0x5328cc], eax
mov eax, dword [0x532954]
mov edx, 0x50684c
call fcn.0040b7a0
jne 0x505b2c
mov eax, dword [0x532894]
mov dword [0x532904], eax
jmp 0x505b3b
imul eax, dword [0x532a40], 0xf5
mov dword [0x53297c], eax
mov eax, dword [0x5329d8]
sub eax, dword [0x5329bc]
mov dword [0x532a00], eax
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x1c]
jne 0x505b84
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 8]
call fcn.0040b7a0
jne 0x505b74
mov eax, dword [0x532874]
call fcn.00407df4
mov dword [0x532874], eax
jmp 0x505b84
mov eax, dword [0x5328fc]
sub eax, dword [0x53293c]
mov dword [0x5328cc], eax
mov eax, dword [0x5328ec]
mov dword [0x532934], eax
push 0x8000
push 0
mov eax, dword [ebp - 0x28]
push eax
call dword [0x5329a8]
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 2
jge 0x505c74
inc dword [ebp - 0x1c]
mov ecx, 1
mov edx, dword [0x532a20]
mov eax, 0x506880
call fcn.0040b9e8
cmp eax, 0x78
je 0x505be7
call fcn.00502dd4
call fcn.00502dd4
mov dword [ebp - 0x18], eax
mov eax, dword [0x5328c4]
call fcn.00407df4
mov dword [0x5328c4], eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0xc]
mov dword [ebp - 0x10], eax
mov eax, dword [0x5328fc]
sub eax, 0xad
mov dword [0x532964], eax
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0xc]
mov edx, dword [ebp - 0xc]
sub edx, dword [ebp - 0xc]
cmp eax, edx
jle 0x505c4e
mov eax, dword [0x5328ac]
sub eax, dword [0x53295c]
cmp eax, dword [0x5329c4]
jne 0x505c31
mov eax, dword [0x5328a4]
add eax, 4
mov dword [0x532a48], eax
jmp 0x505c4e
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [0x532874]
push eax
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x10]
call fcn.004f96a0
mov dword [0x53293c], eax
mov eax, dword [0x5328b4]
push eax
mov ecx, dword [ebp - 0x1c]
mov edx, dword [0x5329c4]
mov eax, dword [ebp - 0x14]
call fcn.004fe8f8
mov dword [0x53295c], eax
cmp dword [ebp - 0x1c], 2
jl 0x505bae
mov eax, dword [0x5328c4]
mov dword [0x5329b4], eax
mov eax, dword [0x5329c4]
call fcn.00407df4
mov dword [0x5329c4], eax
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x1c]
cmp eax, 0xf
jge 0x505ca8
mov eax, dword [0x5329c4]
imul dword [0x532a08]
mov dword [0x532a48], eax
mov eax, 3
sub eax, dword [0x5329bc]
mov dword [0x53289c], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5072e3
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x28]
mov dword [eax + 4], edx
lea eax, [ebp - 0x6c]
push eax
call dword [0x5329e4]
xor eax, eax
mov dword [ebp - 0x1c], eax
mov eax, dword [0x5329d8]
mov dword [0x532864], eax
mov eax, dword [0x532974]
mov dword [0x53286c], eax
mov eax, dword [0x53286c]
cmp eax, dword [0x532864]
jle 0x505e15
mov eax, dword [0x532874]
mov dword [0x532894], eax
jmp 0x505e29
mov eax, dword [ebp - 0x18]
add eax, 4
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.00408238
mov dword [ebp - 0x10], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jne 0x505de8
mov eax, dword [0x532944]
call fcn.00407df4
mov dword [0x532944], eax
mov eax, dword [0x5328ec]
shl eax, 3
mov dword [0x53298c], eax
mov eax, dword [0x5329ac]
add eax, 0xa0
mov dword [0x5329e0], eax
mov eax, dword [0x5329f8]
sub eax, 0x9f
mov dword [0x532a38], eax
mov eax, 0x9d
sub eax, dword [0x532a48]
mov dword [str.sw1_a], eax
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x68]
mov dword [eax + 0x18], edx
mov eax, dword [str.sw1_a]
mov dword [0x53292c], eax
mov eax, dword [ebp - 0x1c]
imul dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
mov eax, dword [0x532a28]
add eax, 4
mov dword [0x53298c], eax
mov eax, dword [0x5328fc]
mov dword [0x5329d0], eax
mov eax, dword [0x5329d0]
cmp eax, dword [0x53292c]
jge 0x505ec6
mov eax, dword [0x5328f4]
mov dword [0x532a38], eax
mov eax, dword [0x5328ec]
add eax, 0xc6
mov dword [0x53288c], eax
push 4
push 0x1000
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0x54]
push eax
mov eax, dword [ebp - 0x28]
push eax
call dword [0x532980]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x10]
add eax, 4
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.00408238
mov dword [ebp - 0x14], eax
mov eax, dword [0x532884]
sub eax, 0x59
mov dword [0x5329c4], eax
lea eax, [ebp - 8]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.0040b7d8
fild dword [str.sw1_a]
call fcn.0040822c
mov dword [0x532a30], eax
mov eax, dword [0x532a48]
call fcn.00407df4
mov dword [0x532a48], eax
mov eax, dword [0x53296c]
mov dword [0x53285c], eax
mov eax, dword [0x532a48]
cmp eax, dword [0x53285c]
jle 0x505f67
lea eax, [ebp - 8]
mov edx, dword [ebp - 8]
call fcn.0040ac1c
jmp 0x505f83
mov eax, dword [ebp - 0x1c]
push eax
mov ecx, dword [0x5329d0]
mov edx, dword [ebp - 0x1c]
mov eax, dword [0x532a30]
call fcn.004fddbc
mov dword [0x532a40], eax
push 0x5329ac
push 0x532a28
push 0x53296c
push 0x5328f4
lea ecx, [ebp - 0x18]
lea edx, [ebp - 0x14]
lea eax, [ebp - 0xc]
call fcn.004f8dd4
mov dword [0x5328ec], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0x54]
mov dword [ebp - 0x44], eax
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x44]
call fcn.00407bb0
mov eax, dword [ebp - 0x18]
add eax, 0xbc
cmp eax, dword [ebp - 0x10]
jge 0x505fef
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xc
jge 0x505fef
inc dword [ebp - 0x1c]
lea eax, [ebp - 8]
mov edx, 0x5068a8
call fcn.0040ac1c
cmp dword [ebp - 0x1c], 0xc
jl 0x505fd9
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xe
jge 0x506034
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0xc]
mov dword [ebp - 0x14], eax
mov eax, dword [0x5328bc]
add eax, dword [0x532884]
mov dword [0x53295c], eax
mov eax, dword [0x5328ac]
add eax, 4
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.00408238
mov dword [0x5329c4], eax
cmp dword [ebp - 0x10], 0xe
jl 0x505ffa
mov eax, dword [0x53285c]
sub eax, 0xa8
mov dword [0x532a40], eax
mov eax, dword [ebp - 8]
mov edx, 0x506914
call fcn.0040b7a0
jne 0x506065
lea eax, [ebp - 8]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.0040b7d8
mov eax, dword [0x5329f8]
mov dword [0x5328a4], eax
mov eax, dword [0x53298c]
mov dword [0x5328ac], eax
mov eax, dword [0x5328a4]
cmp eax, dword [0x5328ac]
jle 0x506098
mov eax, dword [0x5329e8]
imul dword [0x532a48]
mov dword [0x5328f4], eax
jmp 0x5060a2
mov eax, dword [0x53288c]
mov dword [0x53293c], eax
mov eax, dword [0x532884]
add eax, 4
mov dword [0x5329ac], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
add eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x3c]
mov dword [edx], eax
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp + 8]
call fcn.004f97fc
test al, al
jne 0x5061e5
imul eax, dword [ebp - 0x1c], 0x96
mov dword [ebp - 0x10], eax
mov eax, dword [0x53299c]
mov edx, 0x50693c
call fcn.0040b7a0
jne 0x5060fd
mov eax, dword [0x5328dc]
sub eax, 0x63
mov dword [0x5329d0], eax
jmp 0x50613a
mov eax, dword [0x532a38]
add eax, 0x93
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.0040822c
mov dword [0x532a50], eax
lea eax, [ebp - 8]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.0040b7d8
mov eax, dword [0x53296c]
sub eax, dword [0x532934]
mov dword [0x5328bc], eax
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 0x1c]
cmp eax, 0x31
jge 0x506151
imul eax, dword [0x53286c], 0x5b
mov dword [0x53294c], eax
lea eax, [ebp - 8]
mov edx, dword [ebp - 8]
call fcn.0040ac1c
mov eax, 0x8b
sub eax, dword [0x5329b4]
mov dword [0x5329e0], eax
mov eax, dword [0x532a00]
add eax, 0x8a
mov dword [0x532a38], eax
call fcn.004f8cdc
mov eax, dword [ebp - 0x18]
add eax, 4
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.00408238
mov dword [ebp - 0x10], eax
mov eax, dword [0x53292c]
mov dword [0x5328f4], eax
mov eax, dword [0x532904]
call fcn.00407df4
mov dword [0x532904], eax
mov eax, dword [0x5328c4]
imul dword [0x53289c]
mov dword [0x532974], eax
mov eax, dword [0x532904]
add eax, 4
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.00408238
mov dword [0x5329d0], eax
mov eax, dword [0x532964]
sub eax, dword [0x53296c]
mov dword [0x532a28], eax
mov eax, dword [ebp - 0x1c]
imul dword [ebp - 0x18]
mov dword [ebp - 0x10], eax
mov eax, dword [0x532944]
mov dword [0x5328cc], eax
call fcn.004fdbd4
mov dword [0x5329e0], eax
mov eax, dword [0x53293c]
sub eax, dword [0x5329c4]
mov dword [0x532934], eax
mov edx, dword [0x532a18]
mov eax, dword [ebp - 0x18]
call fcn.00504d08
mov dword [0x532a30], eax
mov eax, dword [0x532974]
sub eax, dword [str.sw1_a]
cmp eax, 0x80
jge 0x506246
imul eax, dword [0x532a40], 0xaa
mov dword [0x5329d0], eax
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x28]
sub edx, dword [eax + 0x34]
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
mov eax, dword [0x5329bc]
call fcn.004fe8f8
mov dword [ebp - 0xc], eax
mov eax, dword [0x5328c4]
sub eax, dword [0x5328bc]
mov edx, dword [0x5328c4]
sub edx, dword [0x5328bc]
cmp eax, edx
jle 0x5062a4
mov eax, dword [ebp - 0x18]
add eax, 0xc3
mov dword [ebp - 0x10], eax
lea eax, [ebp - 8]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.0040b7d8
jmp 0x5062de
mov eax, dword [0x53285c]
add eax, dword [0x5329b4]
mov dword [0x5329ac], eax
mov eax, dword [0x53289c]
sub eax, dword [0x532904]
mov dword [0x5329f8], eax
mov eax, dword [0x532894]
add eax, 0x9d
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.0040822c
mov dword [0x53285c], eax
mov eax, dword [0x5329e0]
sub eax, dword [0x5328a4]
mov dword [0x5328c4], eax
cmp dword [ebp - 0x30], 0
je 0x5063c7
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x3c]
call fcn.004fea30
mov edx, dword [ebp - 0x3c]
mov byte [edx + 0x15], al
xor eax, eax
mov dword [ebp - 0x1c], eax
mov eax, dword [0x5329b4]
mov dword [0x53285c], eax
mov eax, dword [ebp - 0x14]
imul dword [ebp - 0x18]
mov dword [ebp - 0xc], eax
fild dword [0x53289c]
call fcn.00408238
mov dword [0x5328d4], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 1
jne 0x50630e
mov eax, dword [0x532a48]
add eax, 0xc1
mov dword [0x53294c], eax
mov eax, dword [0x532934]
mov dword [0x53297c], eax
mov eax, dword [0x532984]
call fcn.00407df4
mov dword [0x532984], eax
mov eax, dword [0x53297c]
cmp eax, dword [0x532984]
jge 0x5063a6
mov eax, dword [0x5329c4]
call fcn.00407df4
mov dword [0x5329c4], eax
mov eax, dword [0x5329c4]
cmp eax, dword [0x532984]
jge 0x50639c
mov eax, dword [0x532904]
sub eax, 0xbc
mov dword [0x532a50], eax
jmp 0x5063a6
mov eax, dword [0x532a28]
mov dword [str.sw1_a], eax
mov eax, dword [0x532874]
sub dword [0x5328f4], eax
mov eax, dword [0x5329e0]
imul eax, dword [0x53294c]
mov dword [0x53294c], eax
jmp 0x50661f
mov eax, dword [ebp - 8]
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
je 0x5063de
mov eax, dword [ebp - 0x48]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0x8d
jne 0x506458
mov eax, dword [0x53297c]
mov dword [0x53286c], eax
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x1c]
cmp eax, 0x85
jge 0x506426
push 0x53295c
push 0x5328b4
push 0x532a08
lea eax, [ebp - 0x18]
push eax
mov ecx, 0x532934
lea edx, [ebp - 0x1c]
lea eax, [ebp - 0x10]
call fcn.004f8dd4
mov dword [ebp - 0xc], eax
jmp 0x506431
mov eax, dword [ebp - 0x1c]
sub eax, 0x95
mov dword [ebp - 0x10], eax
mov ecx, 1
mov edx, dword [ebp - 8]
mov eax, 0x506964
call fcn.0040b9e8
cmp eax, 0x3e
jge 0x506458
mov eax, dword [0x53286c]
imul dword [0x5329d0]
mov dword [0x5329bc], eax
mov eax, dword [0x5328b4]
call fcn.00407df4
mov dword [0x5328b4], eax
mov eax, dword [0x532984]
add eax, 0xa4
mov dword [0x5328e4], eax
lea eax, [ebp - 0xc]
push eax
mov ecx, 0x5329b4
lea edx, [ebp - 0x18]
mov eax, 0x53289c
call fcn.004fa8ac
mov dword [0x532974], eax
mov eax, dword [0x532a40]
mov dword [0x532934], eax
mov eax, dword [0x532934]
cmp eax, dword [0x5328b4]
jle 0x5064b9
mov eax, dword [0x532a38]
sub eax, 0xa0
mov dword [0x53298c], eax
jmp 0x5064d4
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x18]
jge 0x5064d4
mov eax, dword [0x532a28]
sub eax, dword [0x532884]
mov dword [0x532864], eax
imul eax, dword [0x53294c], 0x9a
mov dword [0x5328cc], eax
mov eax, dword [ebp - 0x3c]
mov byte [eax + 0x15], 1
mov eax, dword [0x532a48]
mov dword [0x5329d0], eax
mov eax, dword [0x5329e8]
mov dword [0x5329e0], eax
mov eax, dword [0x5329d0]
cmp eax, dword [0x5329e0]
jge 0x506548
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 4
jge 0x50652c
inc dword [ebp - 0x1c]
lea eax, [ebp - 8]
mov edx, 0x50698c
call fcn.0040ac1c
cmp dword [ebp - 0x1c], 4
jl 0x506516
imul eax, dword [ebp - 0x18], 0xc4
mov dword [ebp - 0xc], eax
mov eax, dword [0x532964]
sub eax, dword [0x5329e0]
mov dword [0x5328fc], eax
jmp 0x5065c7
mov eax, 0x59
sub eax, dword [0x5328f4]
mov dword [0x532974], eax
mov eax, 0x60
sub eax, dword [ebp - 0xc]
cmp eax, 0xf7
jge 0x5065a7
mov eax, dword [0x5329e0]
add eax, dword [0x5328ec]
mov edx, dword [0x5328b4]
add edx, dword [0x5329e0]
cmp eax, edx
jge 0x506593
mov eax, dword [0x53289c]
add eax, 0x88
mov dword [0x53285c], eax
jmp 0x5065b4
mov edx, dword [ebp - 0x10]
mov eax, dword [0x532a30]
call fcn.004f8fc4
mov dword [0x532964], eax
jmp 0x5065b4
mov eax, dword [0x532a30]
add eax, 4
mov dword [0x532974], eax
mov edx, dword [0x532894]
mov eax, dword [ebp - 0x14]
call fcn.004f9258
mov dword [0x5328ec], eax
fild dword [0x532a18]
call fcn.0040822c
mov dword [0x532a48], eax
mov eax, dword [0x532864]
add eax, dword [0x532a30]
mov dword [0x532894], eax
mov eax, dword [0x5328a4]
sub eax, dword [0x53297c]
mov dword [0x5328d4], eax
mov eax, dword [0x5328e4]
add eax, 4
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.00408238
mov dword [0x53292c], eax
mov eax, dword [0x532984]
add eax, dword [0x5329b4]
mov dword [0x53296c], eax
lea eax, [ebp - 8]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.0040b7d8
mov eax, dword [0x5329d0]
mov dword [0x532884], eax
mov eax, dword [0x53296c]
mov dword [0x532894], eax
imul eax, dword [ebp - 0x14], 0xa5
mov dword [ebp - 0xc], eax
push 0x532964
mov ecx, 0x532a08
mov edx, 0x53293c
mov eax, 0x532a40
call fcn.004fa8ac
mov dword [0x532a38], eax
mov eax, dword [0x53286c]
add eax, 0x3c
mov dword [0x53290c], eax
mov eax, dword [ebp - 0x3c]
push eax
call fcn.004ff7bc
test al, al
jne 0x5067f0
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xd
jge 0x5066d1
inc dword [ebp - 0x1c]
mov ecx, 1
mov edx, dword [ebp - 8]
mov eax, 0x5069b4
call fcn.0040b9e8
cmp eax, 0xfb
jge 0x5066be
mov eax, 0x5a
sub eax, dword [ebp - 0x18]
mov dword [ebp - 0xc], eax
mov eax, dword [0x53290c]
sub eax, 0x64
mov dword [0x532934], eax
cmp dword [ebp - 0x1c], 0xd
jl 0x506697
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x14]
jge 0x5066eb
mov eax, dword [0x5329bc]
sub eax, 0x61
mov dword [0x5329d8], eax
jmp 0x506743
mov eax, dword [0x5328dc]
sub eax, dword [0x532a08]
cmp eax, dword [0x532a38]
jne 0x506711
lea eax, [ebp - 8]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.0040b7d8
mov eax, 0xfe
sub eax, dword [0x5329b4]
cmp eax, 0xd8
jge 0x506734
imul eax, dword [0x53293c], 0xf4
mov dword [0x5328f4], eax
jmp 0x506743
mov eax, dword [0x532a40]
add eax, 0x8b
mov dword [0x53298c], eax
mov eax, dword [ebp - 0x1c]
add eax, 0xf6
cmp eax, dword [ebp - 0x14]
jge 0x506775
mov eax, dword [ebp - 8]
mov edx, 0x506a34
call fcn.0040b7a0
jne 0x50676b
mov eax, dword [0x532964]
mov dword [str.sw1_a], eax
jmp 0x506775
mov eax, dword [0x5328ac]
mov dword [0x5328ec], eax
mov eax, dword [0x532a00]
add eax, dword [0x532904]
mov dword [0x532974], eax
mov eax, dword [0x53298c]
call fcn.00407df4
mov dword [0x53298c], eax
call fcn.004f8cdc
lea eax, [ebp - 8]
mov edx, dword [ebp - 8]
call fcn.0040ac1c
mov eax, dword [0x532884]
mov dword [str.sw1_a], eax
imul eax, dword [ebp - 0x18], 0xaf
mov dword [ebp - 0xc], eax
xor eax, eax
mov dword [ebp - 0x10], eax
mov eax, dword [str.sw1_a]
mov dword [0x5328cc], eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 7
jne 0x5067bd
mov eax, dword [0x532a28]
add eax, dword [0x5328dc]
mov dword [0x532944], eax
mov eax, dword [0x53286c]
imul dword [0x532864]
mov dword [0x53298c], eax
mov eax, dword [0x532a30]
sub eax, 0x6b
mov dword [0x5329e0], eax
mov eax, dword [0x53296c]
mov dword [0x532a08], eax
mov eax, dword [0x532904]
mov dword [0x532a18], eax
fild dword [0x5328b4]
call fcn.0040822c
mov dword [0x532884], eax
mov eax, dword [0x53295c]
sub eax, 0
mov dword [0x5328bc], eax
imul eax, dword [0x5329ac], 0xfe
mov dword [0x5328fc], eax
mov eax, dword [0x53289c]
mov dword [0x53293c], eax
mov eax, dword [ebp - 0x3c]
call fcn.004fc228
test al, al
jne 0x5069da
xor eax, eax
mov dword [ebp - 0x1c], eax
mov ecx, 1
mov edx, dword [0x532a20]
mov eax, 0x506a5c
call fcn.0040b9e8
cmp eax, 0x8a
je 0x5068ac
call fcn.00502dd4
mov dword [ebp - 0xc], eax
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 5
jge 0x5068ac
inc dword [ebp - 0x14]
mov eax, dword [0x5329bc]
add eax, 4
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.00408238
mov dword [0x53293c], eax
cmp dword [ebp - 0x14], 5
jl 0x50688b
mov eax, dword [0x5329b4]
mov dword [0x5329ac], eax
mov eax, dword [0x532a00]
add eax, 0x56
mov dword [0x5329f8], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xd
jne 0x50685c
mov eax, dword [0x53298c]
shl eax, 5
mov dword [0x53286c], eax
lea eax, [ebp - 0xc]
push eax
push 0x5328a4
lea eax, [ebp - 0xc]
push eax
lea ecx, [ebp - 0xc]
lea edx, [ebp - 0x18]
mov eax, str.sw1_a
call fcn.00503728
mov dword [0x5328e4], eax
mov eax, dword [0x5329e8]
mov dword [0x5328ac], eax
fild dword [0x53288c]
call fcn.0040822c
mov dword [0x5328e4], eax
mov eax, dword [0x5329e0]
mov dword [0x5328fc], eax
mov eax, dword [0x5328fc]
cmp eax, dword [0x5329ac]
jle 0x50693d
mov eax, dword [0x5329d8]
add eax, 0xe7
mov dword [0x53296c], eax
jmp 0x506967
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x18]
jge 0x506967
mov eax, dword [0x5329e8]
sub eax, dword [0x532884]
cmp eax, 0x86
jge 0x506967
mov eax, dword [0x5328f4]
add eax, 0x7d
mov dword [0x532864], eax
call fcn.004f8cdc
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 1
jge 0x506998
inc dword [ebp - 0x1c]
xor eax, eax
mov dword [ebp - 0x14], eax
mov eax, dword [0x532a30]
mov dword [0x532864], eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 7
jne 0x50697f
cmp dword [ebp - 0x1c], 1
jl 0x506977
mov eax, dword [0x5328a4]
call fcn.00407df4
mov dword [0x5328a4], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x10], eax
mov edx, dword [0x5328bc]
mov eax, dword [ebp - 0x1c]
call fcn.004f9258
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 0x18]
push eax
push 0x53293c
mov ecx, 0x53288c
mov edx, 0x53293c
lea eax, [ebp - 0x1c]
call fcn.004ec1bc
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 4]
call fcn.005040c8
test al, al
jne 0x506b08
mov eax, dword [ebp - 0x10]
shl eax, 4
lea eax, [eax + eax*2]
mov dword [ebp - 0x14], eax
mov eax, dword [0x532a30]
mov dword [0x532944], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
mov eax, dword [0x532964]
add eax, dword [0x5328ac]
mov dword [0x5329d0], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x10
jne 0x506a08
mov eax, dword [0x5328f4]
add eax, 0xf8
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.0040822c
mov dword [0x532a48], eax
lea eax, [ebp - 8]
push eax
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 8]
call fcn.0040b7d8
lea eax, [ebp - 8]
mov edx, dword [ebp - 8]
call fcn.0040ac1c
call fcn.004f8cdc
mov eax, dword [0x5328f4]
call fcn.00407df4
mov dword [0x5328f4], eax
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xf
jge 0x506a8c
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
add eax, 0xa6
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x14], 0xf
jl 0x506a78
imul eax, dword [0x532a38], 0x56
mov dword [0x5329e0], eax
mov eax, 0x5c
sub eax, dword [0x532944]
cmp eax, 0x22
jge 0x506ae9
mov eax, dword [0x532a30]
mov dword [0x532a48], eax
mov eax, dword [0x5329d0]
mov dword [0x53285c], eax
mov eax, dword [0x53285c]
cmp eax, dword [0x532a48]
jle 0x506ad8
lea eax, [ebp - 8]
mov edx, 0x506a88
call fcn.0040ac1c
jmp 0x506af9
mov eax, dword [0x5329b4]
sub eax, 0xe9
mov dword [0x5328fc], eax
jmp 0x506af9
fild dword [0x532a50]
call fcn.0040822c
mov dword [0x5329b4], eax
mov eax, dword [0x5329e8]
add eax, 0xb0
mov dword [0x532a30], eax
mov eax, dword [ebp - 0x1c]
sub eax, 0x13
mov dword [ebp - 0x10], eax
mov eax, dword [0x5329c4]
imul dword [0x532a30]
mov dword [0x53293c], eax
mov eax, dword [0x5329bc]
add eax, 4
mov dword [0x5329ac], eax
mov eax, dword [0x532a08]
add eax, 0x41
mov dword [0x5329f8], eax
mov eax, 0x3f
sub eax, dword [0x53285c]
mov dword [0x532a50], eax
mov eax, dword [ebp - 0x3c]
call fcn.004fe014
test al, al
jne 0x506be9
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x10], eax
mov eax, dword [0x5329d8]
add eax, 0xd2
mov dword [0x53296c], eax
mov eax, dword [0x532a30]
sub eax, 0xd1
mov dword [0x5329c4], eax
mov eax, dword [0x5329e8]
add eax, dword [0x5328c4]
cmp eax, dword [0x5328c4]
jle 0x506ba8
mov eax, dword [0x532964]
inc eax
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.0040822c
mov dword [0x532a50], eax
mov eax, dword [0x532884]
sub eax, dword [0x532a18]
mov edx, dword [0x5329ac]
sub edx, dword [0x532a18]
cmp eax, edx
jle 0x506be4
mov eax, dword [0x532934]
push eax
mov ecx, dword [0x532964]
mov edx, dword [0x532a48]
mov eax, dword [0x53285c]
call fcn.004fddbc
mov dword [0x532864], eax
call fcn.004f8cdc
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
mov eax, dword [0x53297c]
add eax, 4
mov dword [0x532a28], eax
mov eax, dword [0x5329d8]
add eax, 0x90
mov dword [0x53286c], eax
mov eax, dword [str.sw1_a]
mov dword [0x5328a4], eax
mov eax, dword [0x532904]
add eax, 4
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.00408238
mov dword [0x5328dc], eax
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
cmp dword [eax + 0x28], 0
je 0x50713d
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0xc]
cmp eax, 0xc4
jge 0x506ca3
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xa
jge 0x506c88
inc dword [ebp - 0x1c]
mov eax, dword [0x5329f8]
mov dword [0x532a48], eax
mov eax, dword [0x532a50]
call fcn.00407df4
mov dword [0x532a50], eax
mov eax, dword [0x532a50]
cmp eax, dword [0x532a48]
jle 0x506c82
call fcn.005030d8
cmp dword [ebp - 0x1c], 0xa
jl 0x506c54
mov edx, dword [ebp - 0x18]
mov eax, dword [0x532a28]
call fcn.004f915c
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
jmp 0x506cb0
mov eax, dword [0x532a30]
add eax, 4
mov dword [0x5329b4], eax
mov eax, dword [0x5329bc]
add eax, dword [0x532874]
mov dword [0x532a28], eax
mov ecx, dword [ebp - 0x1c]
mov edx, dword [0x532874]
mov eax, dword [ebp - 0x1c]
call fcn.00503fe0
mov eax, dword [0x53294c]
add eax, 4
mov dword [0x53288c], eax
mov eax, dword [0x532a00]
imul dword [0x532a00]
mov dword [0x5328c4], eax
mov eax, dword [0x532944]
mov dword [0x5328dc], eax
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
mov eax, dword [eax + 0x28]
add eax, dword [ebp - 0x28]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x18]
jne 0x506db8
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 9
jge 0x506d60
inc dword [ebp - 0x1c]
mov eax, dword [0x532a38]
mov dword [0x532a48], eax
mov eax, dword [0x53285c]
call fcn.00407df4
mov dword [0x53285c], eax
mov eax, dword [0x53285c]
cmp eax, dword [0x532a48]
jle 0x506d5a
mov ecx, dword [ebp - 0xc]
mov edx, dword [0x53290c]
mov eax, dword [ebp - 0x18]
call fcn.00503fe0
cmp dword [ebp - 0x1c], 9
jl 0x506d20
fild dword [ebp - 0x18]
call fcn.0040822c
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x506d8f
inc dword [ebp - 0x14]
mov eax, dword [0x53285c]
sub eax, dword [0x53295c]
mov dword [0x5329b4], eax
cmp dword [ebp - 0x14], 3
jl 0x506d76
mov eax, dword [0x5328e4]
mov dword [0x5329f8], eax
mov eax, dword [0x5329f8]
cmp eax, dword [0x532a48]
jge 0x506dc5
mov eax, dword [0x532894]
imul dword [0x5328d4]
mov dword [0x53286c], eax
jmp 0x506dc5
mov eax, dword [0x53290c]
add eax, 4
mov dword [0x5328ec], eax
mov eax, dword [0x5328bc]
add eax, dword [0x532884]
mov dword [0x53296c], eax
mov eax, dword [0x532a28]
mov dword [0x532984], eax
mov eax, dword [0x5328b4]
add eax, 4
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.00408238
mov dword [0x5329d8], eax
mov eax, dword [0x5328f4]
sub eax, dword [0x532a08]
mov dword [0x532a30], eax
mov eax, dword [0x53294c]
mov dword [0x532874], eax
push 0
push 1
mov eax, dword [ebp - 0x28]
push eax
call dword [ebp - 0x34]
cmp eax, 1
sbb eax, eax
inc eax
mov byte [ebp - 0x35], al
mov eax, 0xbd
sub eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x18]
cmp eax, 0x5e
jge 0x506f5f
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x1c]
jle 0x506e87
mov eax, dword [0x5329e8]
sub eax, dword [0x532974]
mov edx, dword [0x53290c]
sub edx, dword [0x532974]
cmp eax, edx
jle 0x506eea
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 1
jge 0x506eea
inc dword [ebp - 0x1c]
lea eax, [ebp - 8]
mov edx, dword [ebp - 8]
call fcn.0040ac1c
cmp dword [ebp - 0x1c], 1
jl 0x506e71
jmp 0x506eea
imul eax, dword [0x532a00], 0x4d
mov dword [0x53293c], eax
mov eax, dword [0x532a50]
sub eax, 0x4c
mov dword [0x53298c], eax
mov eax, dword [0x53293c]
mov dword [0x5329d0], eax
mov eax, dword [0x5329d8]
call fcn.00407df4
mov dword [0x5329d8], eax
mov eax, dword [0x5329d0]
cmp eax, dword [0x5329d8]
jge 0x506ee0
mov eax, dword [0x532a40]
add eax, 0x15
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.0040822c
mov dword [0x532864], eax
jmp 0x506eea
mov eax, dword [0x53290c]
mov dword [0x5328d4], eax
mov eax, dword [ebp - 0x14]
add eax, dword [ebp - 0xc]
mov edx, dword [ebp - 0x14]
add edx, dword [ebp - 0x14]
cmp eax, edx
jge 0x506f19
mov eax, dword [0x532864]
imul dword [0x532974]
mov dword [0x5329d0], eax
mov eax, dword [0x53285c]
add eax, 4
mov dword [0x532a38], eax
jmp 0x506f34
lea eax, [ebp - 8]
mov edx, dword [ebp - 8]
call fcn.0040ac1c
mov eax, 0xa2
sub eax, dword [0x5328dc]
mov dword [0x5328bc], eax
mov eax, dword [0x532984]
mov dword [0x5328f4], eax
mov eax, dword [0x5328f4]
cmp eax, dword [0x5329d8]
jle 0x506f55
mov eax, dword [0x532a40]
mov dword [0x532944], eax
mov eax, dword [0x532884]
mov dword [0x53298c], eax
mov eax, dword [0x532a28]
mov dword [0x532a18], eax
lea eax, [ebp - 0x14]
push eax
push 0x5329e8
push 0x5329e0
mov ecx, 0x532a18
lea edx, [ebp - 0x14]
lea eax, [ebp - 0x10]
call fcn.004fc108
mov dword [0x5329e8], eax
cmp byte [ebp - 0x35], 0
jne 0x507075
fild dword [ebp - 0x1c]
call fcn.0040822c
mov dword [ebp - 0x18], eax
mov eax, dword [0x53293c]
mov dword [0x5329b4], eax
xor eax, eax
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 1
jge 0x506fd3
inc dword [ebp - 0x14]
mov eax, dword [0x53285c]
call fcn.00407df4
mov dword [0x53285c], eax
cmp dword [ebp - 0x14], 1
jl 0x506fbb
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jne 0x506fb0
mov eax, dword [0x5328a4]
call fcn.00407df4
mov dword [0x5328a4], eax
lea eax, [ebp - 8]
mov edx, dword [ebp - 8]
call fcn.0040ac1c
imul eax, dword [0x532a28], 0x59
mov dword [0x5328ec], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5072e3
mov eax, 0xab
sub eax, dword [ebp - 0x14]
mov dword [ebp - 0x10], eax
mov eax, dword [0x53293c]
shl eax, 4
mov dword [0x53292c], eax
mov eax, dword [0x532984]
add eax, dword [0x53295c]
mov dword [0x53297c], eax
mov eax, dword [0x532934]
mov dword [0x532984], eax
mov eax, dword [0x53297c]
add eax, 4
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
call fcn.00408238
mov dword [0x5329e8], eax
mov eax, dword [0x5329d8]
sub eax, dword [0x5328d4]
mov dword [0x532a40], eax
mov eax, dword [ebp - 0x3c]
mov byte [eax + 0x14], 1
mov eax, dword [ebp - 0x1c]
add eax, 0xd4
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x14], eax
mov eax, dword [0x5328ec]
add eax, 0x6b
mov dword [0x53296c], eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xc
jne 0x5070e6
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [0x532964]
mov edx, dword [0x5328bc]
mov eax, dword [0x53293c]
call fcn.004fddbc
mov dword [0x532874], eax
mov edx, dword [0x53290c]
mov eax, dword [ebp - 0x14]
call fcn.004f915c
mov dword [0x532894], eax
imul eax, dword [0x53293c], 0xcd
mov dword [0x532a30], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 4], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5072e3
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x506700
lea eax, [ebp - 8]
call fcn.0040a7f4
ret