Function at 0x4226f0
Capabilities:
Contain obfuscated stackstrings
Encode data using base64
Parse pe header
Read file on windows
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4e53af
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x1bd4
call fcn.00474d50
mov eax, dword [0x520628]
xor eax, esp
mov dword [esp + 0x1bd0], eax
push ebx
push esi
push edi
mov eax, dword [0x520628]
xor eax, esp
push eax
lea eax, [esp + 0x1be8]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x14], ecx
mov ecx, dword [0x52a92c]
mov dword [esp + 0x10], eax
call fcn.0044a600
mov esi, eax
call fcn.00460929
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x422767
push 0x80004005
call fcn.00407820
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
lea edi, [eax + 0x10]
mov dword [esp + 0x28], edi
mov ebx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
push 0x5120cc
add esi, 0x55c
add ebx, 0x78
push esi
mov dword [esp + 0x1bf8], 0
push ebx
mov dword [ecx], 0
call fcn.0046f0db
add esp, 0xc
cmp dword [ebx], 0
jne 0x4227e7
mov edx, dword [esp + 0x14]
mov dword [edx], 1
lea eax, [edi - 0x10]
mov dword [esp + 0x1bf0], 0xffffffff
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x42aed8
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
jmp 0x42aed8
mov ecx, dword [ebx]
mov esi, dword [esp + 0x10]
push ecx
push 1
add esi, 0x7c
push 4
push esi
call fcn.004714ed
add esp, 0x10
test eax, eax
jne 0x42280e
mov edx, dword [esp + 0x14]
mov dword [edx], 2
jmp 0x4227b7
mov eax, dword [esi]
rol eax, 0xd
xor eax, 0x1bfedf72
mov dword [esi], eax
jne 0x422843
mov ecx, dword [esp + 0x14]
lea eax, [edi - 0x10]
mov dword [ecx], 3
mov dword [esp + 0x1bf0], 0xffffffff
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jmp 0x4227d2
xor ecx, ecx
mov edx, 0x2c
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004509ec
mov ecx, dword [esp + 0x14]
add esp, 4
mov dword [ecx + 0x80], eax
test eax, eax
jne 0x422879
mov eax, dword [esp + 0x14]
mov dword [eax], 5
jmp 0x4227b7
mov ecx, dword [ebx]
mov edx, dword [esi]
push ecx
push edx
push 0x2c
push eax
call fcn.004714ed
mov edi, dword [esi]
add esp, 0x10
cmp eax, edi
je 0x42289f
mov eax, dword [esp + 0x14]
mov dword [eax], 2
jmp 0x42aecf
mov ecx, dword [0x52a930]
call fcn.0044a600
imul edi, edi, 0x2c
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x80]
push edi
push edx
mov ecx, eax
call fcn.00448ed0
add esp, 8
test eax, eax
jne 0x4228d6
mov eax, dword [esp + 0x14]
mov dword [eax], 4
jmp 0x42aecf
mov esi, dword [esi]
xor edx, edx
xor edi, edi
test esi, esi
jbe 0x422909
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x80]
add eax, 0x24
lea ecx, [ecx]
mov ecx, dword [eax + 4]
cmp ecx, edx
jbe 0x4228f9
mov edx, ecx
mov ecx, dword [eax]
cmp ecx, edi
jbe 0x422901
mov edi, ecx
add eax, 0x2c
sub esi, 1
jne 0x4228f0
push edx
call fcn.004509ec
add esp, 4
mov dword [0x52a944], eax
cmp edi, 0x8400
jae 0x422924
mov edi, 0x8400
push edi
call fcn.004509ec
add esp, 4
lea edx, [esp + 0x1918]
mov dword [0x52ab50], eax
mov eax, dword [esp + 0x10]
push edx
push eax
mov byte [esp + 0x1920], 0x75
mov byte [esp + 0x1921], 0x69
mov byte [esp + 0x1922], 0x2e
mov byte [esp + 0x1923], 0x74
mov byte [esp + 0x1924], 0x78
mov byte [esp + 0x1925], 0x74
mov byte [esp + 0x1926], 0
call fcn.0042afe0
mov esi, eax
test esi, esi
jne 0x422991
mov ecx, dword [esp + 0x14]
mov dword [ecx], 6
jmp 0x42aecf
mov edx, dword [esi + 0x20]
mov eax, dword [ebx]
xor edi, edi
push edi
push edx
push eax
call fcn.00470fbd
mov ecx, dword [ebx]
mov edx, dword [esi + 0x28]
mov eax, dword [0x52a944]
add esp, 0xc
push ecx
push 1
push edx
push eax
call fcn.004714ed
mov edx, dword [0x52ab50]
push edi
lea ecx, [esp + 0x88]
push ecx
mov ecx, dword [0x52a944]
mov dword [esp + 0x8c], edi
mov eax, dword [esi + 0x28]
push edx
push eax
push ecx
call fcn.004e2be0
add esp, 0x24
cmp eax, edi
jne 0x42aec5
mov eax, dword [esp + 0x74]
cmp eax, dword [esi + 0x24]
jne 0x42aec5
mov edx, dword [0x52ab50]
mov byte [eax + edx], 0
mov eax, dword [0x52ab50]
push eax
lea ecx, [esp + 0x1670]
call fcn.00404b50
push 0xdc8
mov byte [esp + 0x1bf4], 1
call fcn.004509b2
mov ecx, dword [esp + 0x14]
add esp, 4
push 0xdc8
push edi
push eax
mov dword [ecx + 0x84], eax
call fcn.00473d40
add esp, 0xc
lea edx, [esp + 0x1998]
push edx
lea ecx, [esp + 0xd5c]
mov byte [esp + 0x18dc], 0x3c
mov byte [esp + 0x18dd], 0x43
mov byte [esp + 0x18de], 0x4f
mov byte [esp + 0x18df], 0x4d
mov byte [esp + 0x18e0], 0x4d
mov byte [esp + 0x18e1], 0x4f
mov byte [esp + 0x18e2], 0x4e
mov byte [esp + 0x18e3], 0x3e
mov byte [esp + 0x18e4], 0
mov byte [esp + 0x199c], 0x3c
mov byte [esp + 0x199d], 0x54
mov byte [esp + 0x199e], 0x52
mov byte [esp + 0x199f], 0x43
mov byte [esp + 0x19a0], 0x4f
mov byte [esp + 0x19a1], 0x4c
mov byte [esp + 0x19a2], 0x4f
mov byte [esp + 0x19a3], 0x52
mov byte [esp + 0x19a4], 0x3e
mov byte [esp + 0x19a5], 0
call fcn.00404b50
lea eax, [esp + 0x18d8]
push eax
lea ecx, [esp + 0xec8]
mov byte [esp + 0x1bf4], 2
call fcn.00404b50
lea ecx, [esp + 0xd58]
push ecx
lea edx, [esp + 0x1654]
push edx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0xecc]
mov byte [esp + 0x1bf8], 3
call fcn.0042b8d0
lea ecx, [esp + 0xec4]
call fcn.00404bc0
lea ecx, [esp + 0xd58]
mov byte [esp + 0x1bf0], 6
call fcn.00404bc0
lea ebx, [edi + 0x10]
cmp dword [esp + 0x1664], edi
je 0x422ccf
push 0x511b64
lea ecx, [esp + 0x10dc]
call fcn.00404b50
lea eax, [esp + 0x10d8]
push eax
lea ecx, [esp + 0x5b8]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 7
call fcn.0044ab00
add esp, 8
lea ecx, [esp + 0x10d8]
mov byte [esp + 0x1bf0], 6
call fcn.00404bc0
mov ecx, dword [esp + 0x5c4]
sub ecx, dword [esp + 0x5c0]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
xor eax, eax
mov dword [esp + 0x18], eax
test ebx, ebx
jle 0x422c99
sub eax, 0
je 0x422c57
sub eax, 1
je 0x422c23
sub eax, 1
jne 0x422c88
lea edi, [eax + 2]
lea esi, [esp + 0x5b4]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x422c0b
mov eax, dword [eax + 4]
jmp 0x422c0e
add eax, 4
push eax
call fcn.0046e7f3
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x84]
mov dword [ecx + 8], eax
jmp 0x422c85
mov edi, 1
lea esi, [esp + 0x5b4]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x422c3f
mov eax, dword [eax + 4]
jmp 0x422c42
add eax, 4
push eax
call fcn.0046e7f3
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x84]
mov dword [ecx + 4], eax
jmp 0x422c85
xor edi, edi
lea esi, [esp + 0x5b4]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x422c70
mov eax, dword [eax + 4]
jmp 0x422c73
add eax, 4
push eax
call fcn.0046e7f3
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x84]
mov dword [ecx], eax
add esp, 4
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x422bde
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x84]
movzx ecx, byte [eax + 8]
movzx edx, byte [eax + 4]
movzx eax, byte [eax]
shl ecx, 8
or ecx, edx
shl ecx, 8
or ecx, eax
lea esi, [esp + 0x5b4]
mov dword [0x52ab64], ecx
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea ecx, [esp + 0x1a4c]
push ecx
lea ecx, [esp + 0x129c]
mov byte [esp + 0x1a50], 0x3c
mov byte [esp + 0x1a51], 0x55
mov byte [esp + 0x1a52], 0x50
mov byte [esp + 0x1a53], 0x44
mov byte [esp + 0x1a54], 0x41
mov byte [esp + 0x1a55], 0x54
mov byte [esp + 0x1a56], 0x45
mov byte [esp + 0x1a57], 0x5f
mov byte [esp + 0x1a58], 0x45
mov byte [esp + 0x1a59], 0x58
mov byte [esp + 0x1a5a], 0x49
mov byte [esp + 0x1a5b], 0x54
mov byte [esp + 0x1a5c], 0x5f
mov byte [esp + 0x1a5d], 0x42
mov byte [esp + 0x1a5e], 0x54
mov byte [esp + 0x1a5f], 0x4e
mov byte [esp + 0x1a60], 0x3e
mov byte [esp + 0x1a61], 0
call fcn.00404b50
lea edx, [esp + 0x18d8]
push edx
lea ecx, [esp + 0xd94]
mov byte [esp + 0x1bf4], 8
call fcn.00404b50
lea eax, [esp + 0x1298]
push eax
lea ecx, [esp + 0x1574]
push ecx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0xd98]
mov byte [esp + 0x1bf8], 9
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xa
call fcn.00404c50
lea ecx, [esp + 0x1570]
call fcn.00404bc0
lea ecx, [esp + 0xd90]
call fcn.00404bc0
lea ecx, [esp + 0x1298]
mov byte [esp + 0x1bf0], 6
call fcn.00404bc0
mov esi, 0xf
cmp dword [esp + 0x1664], edi
je 0x42301b
push 0x511b64
lea ecx, [esp + 0xc7c]
call fcn.00404b50
lea edx, [esp + 0xc78]
push edx
lea eax, [esp + 0x498]
push eax
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xb
call fcn.0044ab00
add esp, 8
lea ecx, [esp + 0xc78]
call fcn.00404bc0
mov dword [esp + 0x17f0], esi
mov dword [esp + 0x17ec], edi
mov byte [esp + 0x17dc], 0
mov byte [esp + 0x1bf0], 0xe
mov ecx, dword [esp + 0x4a4]
sub ecx, dword [esp + 0x4a0]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
cmp ebx, edi
mov dword [esp + 0x14], edi
jle 0x422ff3
nop
cmp dword [esp + 0x14], 3
ja case.default.0x422eaf
mov ecx, dword [esp + 0x14]
jmp dword [ecx*4 + 0x42af00]
push 0x5120d4
lea ecx, [esp + 0xdcc]
call fcn.00404b50
xor edi, edi
lea esi, [esp + 0x494]
mov byte [esp + 0x1bf0], 0xf
call fcn.00441780
lea esi, [esp + 0xdc8]
call fcn.0044ac90
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x17e4]
call fcn.00404c50
mov ecx, esi
mov byte [esp + 0x1bf0], 0xe
call fcn.00404bc0
cmp dword [esp + 0x17f0], 0x10
mov eax, dword [esp + 0x17dc]
jae 0x422f20
lea eax, [esp + 0x17dc]
mov edx, dword [esp + 0x17ec]
push eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x84]
inc edx
push edx
add ecx, 0x10
push ecx
call fcn.004718bb
add esp, 0xc
jmp case.default.0x422eaf
mov edi, 1
lea esi, [esp + 0x494]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x422f61
mov eax, dword [eax + 4]
jmp 0x422f64
add eax, 4
push eax
call fcn.0046e7f3
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x84]
mov dword [ecx + 0xc], eax
jmp 0x422fdf
mov edi, 2
lea esi, [esp + 0x494]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x422f95
mov eax, dword [eax + 4]
jmp 0x422f98
add eax, 4
push eax
call fcn.0046e7f3
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x84]
mov dword [ecx + 0x30], eax
jmp 0x422fdf
mov edi, 3
lea esi, [esp + 0x494]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x422fc9
mov eax, dword [eax + 4]
jmp 0x422fcc
add eax, 4
push eax
call fcn.0046e7f3
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x84]
mov dword [ecx + 0x34], eax
add esp, 4
mov eax, dword [esp + 0x14]
inc eax
cmp eax, ebx
mov dword [esp + 0x14], eax
jl 0x422ea0
lea ecx, [esp + 0x17d8]
call fcn.00404bc0
lea esi, [esp + 0x494]
mov byte [esp + 0x1bf0], 6
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
lea edx, [esp + 0x1a88]
push edx
lea ecx, [esp + 0xe04]
mov byte [esp + 0x1a8c], 0x3c
mov byte [esp + 0x1a8d], 0x55
mov byte [esp + 0x1a8e], 0x50
mov byte [esp + 0x1a8f], 0x44
mov byte [esp + 0x1a90], 0x41
mov byte [esp + 0x1a91], 0x54
mov byte [esp + 0x1a92], 0x45
mov byte [esp + 0x1a93], 0x5f
mov byte [esp + 0x1a94], 0x50
mov byte [esp + 0x1a95], 0x4f
mov byte [esp + 0x1a96], 0x53
mov byte [esp + 0x1a97], 0x5f
mov byte [esp + 0x1a98], 0x4f
mov byte [esp + 0x1a99], 0x46
mov byte [esp + 0x1a9a], 0x46
mov byte [esp + 0x1a9b], 0x53
mov byte [esp + 0x1a9c], 0x45
mov byte [esp + 0x1a9d], 0x54
mov byte [esp + 0x1a9e], 0x3e
mov byte [esp + 0x1a9f], 0
call fcn.00404b50
lea eax, [esp + 0x18d8]
push eax
lea ecx, [esp + 0x1114]
mov byte [esp + 0x1bf4], 0x10
call fcn.00404b50
lea ecx, [esp + 0xe00]
push ecx
lea edx, [esp + 0x14cc]
push edx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x1118]
mov byte [esp + 0x1bf8], 0x11
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x12
call fcn.00404c50
lea ecx, [esp + 0x14c8]
call fcn.00404bc0
lea ecx, [esp + 0x1110]
call fcn.00404bc0
lea ecx, [esp + 0xe00]
mov byte [esp + 0x1bf0], 6
call fcn.00404bc0
cmp dword [esp + 0x1664], edi
je 0x42326d
push 0x511b64
lea ecx, [esp + 0x137c]
call fcn.00404b50
lea eax, [esp + 0x1378]
push eax
lea ecx, [esp + 0x63c]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x13
call fcn.0044ab00
add esp, 8
lea ecx, [esp + 0x1378]
mov byte [esp + 0x1bf0], 6
call fcn.00404bc0
mov ecx, dword [esp + 0x648]
sub ecx, dword [esp + 0x644]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
xor eax, eax
mov dword [esp + 0x18], eax
test ebx, ebx
jle 0x423259
sub eax, 0
je 0x42321a
sub eax, 1
jne 0x42324c
lea edi, [eax + 1]
lea esi, [esp + 0x638]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x423202
mov eax, dword [eax + 4]
jmp 0x423205
add eax, 4
push eax
call fcn.0046e7f3
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x84]
mov dword [ecx + 0x68], eax
jmp 0x423249
xor edi, edi
lea esi, [esp + 0x638]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x423233
mov eax, dword [eax + 4]
jmp 0x423236
add eax, 4
push eax
call fcn.0046e7f3
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x84]
mov dword [ecx + 0x64], eax
add esp, 4
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x4231de
lea esi, [esp + 0x638]
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
lea eax, [esp + 0x1950]
mov byte [esp + 0x1950], 0x3c
mov byte [esp + 0x1951], 0x53
mov byte [esp + 0x1952], 0x45
mov byte [esp + 0x1953], 0x52
mov byte [esp + 0x1954], 0x56
mov byte [esp + 0x1955], 0x45
mov byte [esp + 0x1956], 0x52
mov byte [esp + 0x1957], 0x5f
mov byte [esp + 0x1958], 0x45
mov byte [esp + 0x1959], 0x58
mov byte [esp + 0x195a], 0x49
mov byte [esp + 0x195b], 0x54
mov byte [esp + 0x195c], 0x5f
mov byte [esp + 0x195d], 0x42
mov byte [esp + 0x195e], 0x54
mov byte [esp + 0x195f], 0x4e
mov byte [esp + 0x1960], 0x3e
mov byte [esp + 0x1961], 0
mov dword [esp + 0x32c], esi
mov dword [esp + 0x328], edi
mov byte [esp + 0x318], 0
lea ecx, [eax + 1]
lea ecx, [ecx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x423320
sub eax, ecx
push eax
lea edx, [esp + 0x1954]
push edx
lea ecx, [esp + 0x31c]
call fcn.00404e60
mov byte [esp + 0x1bf0], 0x14
lea eax, [esp + 0x18d8]
mov dword [esp + 0x150], esi
mov dword [esp + 0x14c], edi
mov byte [esp + 0x13c], 0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x423366
sub eax, edx
push eax
lea eax, [esp + 0x18dc]
push eax
lea ecx, [esp + 0x140]
call fcn.00404e60
lea ecx, [esp + 0x314]
push ecx
lea edx, [esp + 0xa8c]
push edx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x140]
mov byte [esp + 0x1bf8], 0x15
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x16
call fcn.00404c50
cmp dword [esp + 0xaa0], ebx
jb 0x4233e0
mov eax, dword [esp + 0xa8c]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0xaa0], esi
mov dword [esp + 0xa9c], edi
mov byte [esp + 0xa8c], 0
cmp dword [esp + 0x150], ebx
jb 0x42340f
mov ecx, dword [esp + 0x13c]
push ecx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x150], esi
mov dword [esp + 0x14c], edi
mov byte [esp + 0x13c], 0
cmp dword [esp + 0x32c], ebx
jb 0x423446
mov edx, dword [esp + 0x318]
push edx
call fcn.004509e1
add esp, 4
mov dword [esp + 0x32c], esi
mov dword [esp + 0x328], edi
mov byte [esp + 0x318], 0
cmp dword [esp + 0x1664], edi
je 0x42370d
push 0x511b64
lea ecx, [esp + 0x6a4]
call fcn.00404b50
lea eax, [esp + 0x6a0]
push eax
lea ecx, [esp + 0xf4]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x17
call fcn.0044ab00
add esp, 8
cmp dword [esp + 0x6b8], ebx
jb 0x4234ba
mov edx, dword [esp + 0x6a4]
push edx
call fcn.004509e1
add esp, 4
mov eax, 0xf
mov dword [esp + 0x6b8], eax
mov dword [esp + 0x6b4], edi
mov byte [esp + 0x6a4], 0
mov dword [esp + 0x1764], eax
mov dword [esp + 0x1760], edi
mov byte [esp + 0x1750], 0
mov byte [esp + 0x1bf0], 0x1a
mov ecx, dword [esp + 0x100]
sub ecx, dword [esp + 0xfc]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
cmp ebx, edi
mov dword [esp + 0x14], edi
jle 0x42368d
cmp dword [esp + 0x14], 3
ja case.default.0x42352f
mov eax, dword [esp + 0x14]
jmp dword [eax*4 + 0x42af10]
push 0x5120d4
lea ecx, [esp + 0xe3c]
call fcn.00404b50
xor edi, edi
lea esi, [esp + 0xf0]
mov byte [esp + 0x1bf0], 0x1b
call fcn.00441780
lea esi, [esp + 0xe38]
call fcn.0044ac90
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x1758]
call fcn.00404c50
mov ecx, esi
mov byte [esp + 0x1bf0], 0x1a
call fcn.00404bc0
cmp dword [esp + 0x1764], 0x10
mov eax, dword [esp + 0x1750]
jae 0x4235a0
lea eax, [esp + 0x1750]
mov ecx, dword [esp + 0x1760]
mov edx, dword [esp + 0x10]
push eax
mov eax, dword [edx + 0x84]
inc ecx
push ecx
add eax, 0x3c
push eax
call fcn.004718bb
add esp, 0xc
jmp case.default.0x42352f
mov edi, 1
lea esi, [esp + 0xf0]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x4235e1
mov eax, dword [eax + 4]
jmp 0x4235e4
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0x38], eax
jmp 0x42365f
mov edi, 2
lea esi, [esp + 0xf0]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x423615
mov eax, dword [eax + 4]
jmp 0x423618
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0x5c], eax
jmp 0x42365f
mov edi, 3
lea esi, [esp + 0xf0]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x423649
mov eax, dword [eax + 4]
jmp 0x42364c
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0x60], eax
add esp, 4
mov eax, dword [esp + 0x14]
inc eax
cmp eax, ebx
mov dword [esp + 0x14], eax
jl 0x423520
cmp dword [esp + 0x1764], 0x10
jb 0x42368d
mov eax, dword [esp + 0x1750]
push eax
call fcn.004509e1
add esp, 4
xor esi, esi
mov byte [esp + 0x1bf0], 6
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x1764], 0xf
mov dword [esp + 0x1760], esi
mov byte [esp + 0x1750], 0
cmp eax, esi
je 0x4236e0
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x100]
push ecx
call fcn.00444f80
mov edx, dword [esp + 0x100]
add esp, 4
push edx
call fcn.004509e1
add esp, 4
mov eax, dword [esp + 0xf0]
push eax
mov dword [esp + 0x100], esi
mov dword [esp + 0x104], esi
mov dword [esp + 0x108], esi
call fcn.004509e1
add esp, 4
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
lea eax, [esp + 0x1964]
mov byte [esp + 0x1964], 0x3c
mov byte [esp + 0x1965], 0x53
mov byte [esp + 0x1966], 0x45
mov byte [esp + 0x1967], 0x52
mov byte [esp + 0x1968], 0x56
mov byte [esp + 0x1969], 0x45
mov byte [esp + 0x196a], 0x52
mov byte [esp + 0x196b], 0x5f
mov byte [esp + 0x196c], 0x50
mov byte [esp + 0x196d], 0x4f
mov byte [esp + 0x196e], 0x53
mov byte [esp + 0x196f], 0x5f
mov byte [esp + 0x1970], 0x4f
mov byte [esp + 0x1971], 0x46
mov byte [esp + 0x1972], 0x46
mov byte [esp + 0x1973], 0x53
mov byte [esp + 0x1974], 0x45
mov byte [esp + 0x1975], 0x54
mov byte [esp + 0x1976], 0x3e
mov byte [esp + 0x1977], 0
mov dword [esp + 0x3d4], esi
mov dword [esp + 0x3d0], edi
mov byte [esp + 0x3c0], 0
lea ecx, [eax + 1]
lea ecx, [ecx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4237d0
sub eax, ecx
push eax
lea ecx, [esp + 0x1968]
push ecx
lea ecx, [esp + 0x3c4]
call fcn.00404e60
mov byte [esp + 0x1bf0], 0x1c
lea eax, [esp + 0x18d8]
mov dword [esp + 0x214], esi
mov dword [esp + 0x210], edi
mov byte [esp + 0x200], 0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x423816
sub eax, edx
push eax
lea edx, [esp + 0x18dc]
push edx
lea ecx, [esp + 0x204]
call fcn.00404e60
lea eax, [esp + 0x3bc]
push eax
lea ecx, [esp + 0xac4]
push ecx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x204]
mov byte [esp + 0x1bf8], 0x1d
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x1e
call fcn.00404c50
cmp dword [esp + 0xad8], ebx
jb 0x423890
mov edx, dword [esp + 0xac4]
push edx
call fcn.004509e1
add esp, 4
mov dword [esp + 0xad8], esi
mov dword [esp + 0xad4], edi
mov byte [esp + 0xac4], 0
cmp dword [esp + 0x214], ebx
jb 0x4238bf
mov eax, dword [esp + 0x200]
push eax
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x214], esi
mov dword [esp + 0x210], edi
mov byte [esp + 0x200], 0
cmp dword [esp + 0x3d4], ebx
jb 0x4238f6
mov ecx, dword [esp + 0x3c0]
push ecx
call fcn.004509e1
add esp, 4
mov dword [esp + 0x3d4], esi
mov dword [esp + 0x3d0], edi
mov byte [esp + 0x3c0], 0
cmp dword [esp + 0x1664], edi
je 0x423a9d
push 1
push 0x511b64
lea ecx, [esp + 0x23c]
mov dword [esp + 0x254], esi
mov dword [esp + 0x250], edi
mov byte [esp + 0x240], 0
call fcn.00404e60
lea edx, [esp + 0x234]
push edx
lea eax, [esp + 0x124]
push eax
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x1f
call fcn.0044ab00
add esp, 8
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x24c], ebx
jb 0x42398a
mov ecx, dword [esp + 0x238]
push ecx
call fcn.004509e1
add esp, 4
mov ecx, dword [esp + 0x130]
mov esi, dword [esp + 0x12c]
mov edi, ecx
sub edi, esi
mov eax, 0x92492493
imul edi
add edx, edi
sar edx, 4
mov edi, edx
shr edi, 0x1f
xor ebx, ebx
add edi, edx
mov dword [esp + 0x24c], 0xf
mov dword [esp + 0x248], ebx
mov byte [esp + 0x238], bl
test edi, edi
jle 0x423a89
mov eax, ebx
sub eax, 0
je 0x423a2b
sub eax, 1
jne 0x423a80
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x423a08
call fcn.0046e5b0
mov esi, dword [esp + 0x12c]
cmp dword [esi + 0x34], 0x10
jb 0x423a13
mov esi, dword [esi + 0x20]
jmp 0x423a16
add esi, 0x20
push esi
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0x70], eax
jmp 0x423a6f
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x423a4e
call fcn.0046e5b0
mov esi, dword [esp + 0x12c]
cmp dword [esi + 0x18], 0x10
jb 0x423a59
mov esi, dword [esi + 4]
jmp 0x423a5c
add esi, 4
push esi
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0x6c], eax
mov esi, dword [esp + 0x130]
mov ecx, dword [esp + 0x134]
add esp, 4
inc ebx
cmp ebx, edi
jl 0x4239d2
lea esi, [esp + 0x120]
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
lea eax, [esp + 0x18e4]
mov byte [esp + 0x18c8], 0x3c
mov byte [esp + 0x18c9], 0x55
mov byte [esp + 0x18ca], 0x50
mov byte [esp + 0x18cb], 0x44
mov byte [esp + 0x18cc], 0x41
mov byte [esp + 0x18cd], 0x54
mov byte [esp + 0x18ce], 0x45
mov byte [esp + 0x18cf], 0x5f
mov byte [esp + 0x18d0], 0x57
mov byte [esp + 0x18d1], 0x49
mov byte [esp + 0x18d2], 0x4e
mov byte [esp + 0x18d3], 0x3e
mov byte [esp + 0x18d4], 0
mov byte [esp + 0x18e4], 0x3c
mov byte [esp + 0x18e5], 0x42
mov byte [esp + 0x18e6], 0x47
mov byte [esp + 0x18e7], 0x3e
mov byte [esp + 0x18e8], 0
mov dword [esp + 0x284], esi
mov dword [esp + 0x280], edi
mov byte [esp + 0x270], 0
lea ecx, [eax + 1]
lea ecx, [ecx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x423b50
sub eax, ecx
push eax
lea eax, [esp + 0x18e8]
push eax
lea ecx, [esp + 0x274]
call fcn.00404e60
mov byte [esp + 0x1bf0], 0x20
lea eax, [esp + 0x18c8]
mov dword [esp + 0x364], esi
mov dword [esp + 0x360], edi
mov byte [esp + 0x350], 0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x423b96
sub eax, edx
push eax
lea ecx, [esp + 0x18cc]
push ecx
lea ecx, [esp + 0x354]
call fcn.00404e60
lea edx, [esp + 0x26c]
push edx
lea eax, [esp + 0xbdc]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x354]
mov byte [esp + 0x1bf8], 0x21
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x22
call fcn.00404c50
cmp dword [esp + 0xbf0], ebx
jb 0x423c10
mov ecx, dword [esp + 0xbdc]
push ecx
call fcn.004509e1
add esp, 4
mov dword [esp + 0xbf0], esi
mov dword [esp + 0xbec], edi
mov byte [esp + 0xbdc], 0
cmp dword [esp + 0x364], ebx
jb 0x423c3f
mov edx, dword [esp + 0x350]
push edx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x364], esi
mov dword [esp + 0x360], edi
mov byte [esp + 0x350], 0
cmp dword [esp + 0x284], ebx
jb 0x423c76
mov eax, dword [esp + 0x270]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0x284], esi
mov dword [esp + 0x280], edi
mov byte [esp + 0x270], 0
cmp dword [esp + 0x1664], edi
je 0x423db1
push 1
mov ebx, 0xf
push 0x5120d4
lea ecx, [esp + 0x434]
mov dword [esp + 0x44c], ebx
mov dword [esp + 0x448], edi
mov byte [esp + 0x438], 0
call fcn.00404e60
lea esi, [esp + 0x42c]
lea eax, [esp + 0x1650]
mov byte [esp + 0x1bf0], 0x23
call fcn.0044ac90
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x16e8]
mov dword [esp + 0x1700], ebx
mov dword [esp + 0x16fc], edi
mov byte [esp + 0x16ec], 0
call fcn.00404c50
mov esi, 0x10
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x444], esi
jb 0x423d2e
mov ecx, dword [esp + 0x430]
push ecx
call fcn.004509e1
add esp, 4
mov eax, dword [esp + 0x16e0]
mov dword [esp + 0x444], ebx
mov dword [esp + 0x440], edi
mov byte [esp + 0x430], 0
cmp dword [esp + 0x16f4], esi
jae 0x423d5b
lea eax, [esp + 0x16e0]
mov edx, dword [esp + 0x16f0]
push eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x84]
inc edx
push edx
add ecx, 0x74
push ecx
call fcn.004718bb
add esp, 0xc
cmp dword [esp + 0x16f4], esi
jb 0x423d94
mov edx, dword [esp + 0x16e0]
push edx
call fcn.004509e1
add esp, 4
mov dword [esp + 0x16f4], ebx
mov ebx, esi
mov dword [esp + 0x16f0], edi
mov byte [esp + 0x16e0], 0
mov esi, 0xf
lea eax, [esp + 0x18ec]
mov byte [esp + 0x18ec], 0x3c
mov byte [esp + 0x18ed], 0x53
mov byte [esp + 0x18ee], 0x54
mov byte [esp + 0x18ef], 0x41
mov byte [esp + 0x18f0], 0x52
mov byte [esp + 0x18f1], 0x54
mov byte [esp + 0x18f2], 0x5f
mov byte [esp + 0x18f3], 0x42
mov byte [esp + 0x18f4], 0x54
mov byte [esp + 0x18f5], 0x4e
mov byte [esp + 0x18f6], 0x3e
mov byte [esp + 0x18f7], 0
mov dword [esp + 0x39c], esi
mov dword [esp + 0x398], edi
mov byte [esp + 0x388], 0
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x423e31
sub eax, ecx
push eax
lea eax, [esp + 0x18f0]
push eax
lea ecx, [esp + 0x38c]
call fcn.00404e60
mov byte [esp + 0x1bf0], 0x24
lea eax, [esp + 0x18c8]
mov dword [esp + 0x2bc], esi
mov dword [esp + 0x2b8], edi
mov byte [esp + 0x2a8], 0
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x423e77
sub eax, ecx
push eax
lea ecx, [esp + 0x18cc]
push ecx
lea ecx, [esp + 0x2ac]
call fcn.00404e60
lea edx, [esp + 0x384]
push edx
lea eax, [esp + 0xafc]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x2ac]
mov byte [esp + 0x1bf8], 0x25
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x26
call fcn.00404c50
cmp dword [esp + 0xb10], ebx
jb 0x423ef1
mov ecx, dword [esp + 0xafc]
push ecx
call fcn.004509e1
add esp, 4
mov dword [esp + 0xb10], esi
mov dword [esp + 0xb0c], edi
mov byte [esp + 0xafc], 0
cmp dword [esp + 0x2bc], ebx
jb 0x423f20
mov edx, dword [esp + 0x2a8]
push edx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x2bc], esi
mov dword [esp + 0x2b8], edi
mov byte [esp + 0x2a8], 0
cmp dword [esp + 0x39c], ebx
jb 0x423f57
mov eax, dword [esp + 0x388]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0x39c], esi
mov dword [esp + 0x398], edi
mov byte [esp + 0x388], 0
cmp dword [esp + 0x1664], edi
je 0x424217
push 0x511b64
lea ecx, [esp + 0x860]
call fcn.00404b50
lea ecx, [esp + 0x85c]
push ecx
lea edx, [esp + 0x480]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x27
call fcn.0044ab00
add esp, 8
cmp dword [esp + 0x874], ebx
jb 0x423fcb
mov eax, dword [esp + 0x860]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0x874], esi
mov dword [esp + 0x870], edi
mov byte [esp + 0x860], 0
mov dword [esp + 0x16bc], esi
mov dword [esp + 0x16b8], edi
mov byte [esp + 0x16a8], 0
mov byte [esp + 0x1bf0], 0x2a
mov ecx, dword [esp + 0x48c]
sub ecx, dword [esp + 0x488]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
cmp ebx, edi
mov dword [esp + 0x14], edi
jle 0x4241dd
lea esp, [esp]
cmp dword [esp + 0x14], 3
ja case.default.0x42403f
mov ecx, dword [esp + 0x14]
jmp dword [ecx*4 + 0x42af20]
push 0x5120d4
lea ecx, [esp + 0x6dc]
call fcn.00404b50
xor edi, edi
lea esi, [esp + 0x47c]
mov byte [esp + 0x1bf0], 0x2b
call fcn.00441780
lea esi, [esp + 0x6d8]
call fcn.0044ac90
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x16b0]
call fcn.00404c50
mov esi, 0x10
mov byte [esp + 0x1bf0], 0x2a
cmp dword [esp + 0x6f0], esi
jb 0x4240af
mov edx, dword [esp + 0x6dc]
push edx
call fcn.004509e1
add esp, 4
mov eax, dword [esp + 0x16a8]
mov dword [esp + 0x6f0], 0xf
mov dword [esp + 0x6ec], 0
mov byte [esp + 0x6dc], 0
cmp dword [esp + 0x16bc], esi
jae 0x4240e4
lea eax, [esp + 0x16a8]
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x84]
push eax
mov eax, dword [esp + 0x16bc]
inc eax
push eax
add edx, 0x98
push edx
call fcn.004718bb
add esp, 0xc
jmp case.default.0x42403f
mov edi, 1
lea esi, [esp + 0x47c]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x424128
mov eax, dword [eax + 4]
jmp 0x42412b
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0x94], eax
jmp 0x4241af
mov edi, 2
lea esi, [esp + 0x47c]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x42415f
mov eax, dword [eax + 4]
jmp 0x424162
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xb8], eax
jmp 0x4241af
mov edi, 3
lea esi, [esp + 0x47c]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x424196
mov eax, dword [eax + 4]
jmp 0x424199
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xbc], eax
add esp, 4
mov eax, dword [esp + 0x14]
inc eax
cmp eax, ebx
mov dword [esp + 0x14], eax
jl 0x424030
cmp dword [esp + 0x16bc], 0x10
jb 0x4241dd
mov eax, dword [esp + 0x16a8]
push eax
call fcn.004509e1
add esp, 4
lea esi, [esp + 0x47c]
mov dword [esp + 0x16bc], 0xf
mov dword [esp + 0x16b8], 0
mov byte [esp + 0x16a8], 0
mov byte [esp + 0x1bf0], 6
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
lea eax, [esp + 0x18f8]
mov byte [esp + 0x18f8], 0x3c
mov byte [esp + 0x18f9], 0x43
mov byte [esp + 0x18fa], 0x41
mov byte [esp + 0x18fb], 0x4e
mov byte [esp + 0x18fc], 0x43
mov byte [esp + 0x18fd], 0x45
mov byte [esp + 0x18fe], 0x4c
mov byte [esp + 0x18ff], 0x5f
mov byte [esp + 0x1900], 0x42
mov byte [esp + 0x1901], 0x54
mov byte [esp + 0x1902], 0x4e
mov byte [esp + 0x1903], 0x3e
mov byte [esp + 0x1904], 0
mov dword [esp + 0x188], esi
mov dword [esp + 0x184], edi
mov byte [esp + 0x174], 0
lea ecx, [eax + 1]
nop
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4242a0
sub eax, ecx
push eax
lea ecx, [esp + 0x18fc]
push ecx
lea ecx, [esp + 0x178]
call fcn.00404e60
mov byte [esp + 0x1bf0], 0x2c
lea eax, [esp + 0x18c8]
mov dword [esp + 0x16c], esi
mov dword [esp + 0x168], edi
mov byte [esp + 0x158], 0
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4242e6
sub eax, ecx
push eax
lea edx, [esp + 0x18cc]
push edx
lea ecx, [esp + 0x15c]
call fcn.00404e60
lea eax, [esp + 0x170]
push eax
lea ecx, [esp + 0xba4]
push ecx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x15c]
mov byte [esp + 0x1bf8], 0x2d
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x2e
call fcn.00404c50
cmp dword [esp + 0xbb8], ebx
jb 0x424360
mov edx, dword [esp + 0xba4]
push edx
call fcn.004509e1
add esp, 4
mov dword [esp + 0xbb8], esi
mov dword [esp + 0xbb4], edi
mov byte [esp + 0xba4], 0
cmp dword [esp + 0x16c], ebx
jb 0x42438f
mov eax, dword [esp + 0x158]
push eax
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x16c], esi
mov dword [esp + 0x168], edi
mov byte [esp + 0x158], 0
cmp dword [esp + 0x188], ebx
jb 0x4243c6
mov ecx, dword [esp + 0x174]
push ecx
call fcn.004509e1
add esp, 4
mov dword [esp + 0x188], esi
mov dword [esp + 0x184], edi
mov byte [esp + 0x174], 0
cmp dword [esp + 0x1664], edi
je 0x4246e8
push 1
push 0x511b64
lea ecx, [esp + 0x2e4]
mov dword [esp + 0x2fc], esi
mov dword [esp + 0x2f8], edi
mov byte [esp + 0x2e8], 0
call fcn.00404e60
lea edx, [esp + 0x2dc]
push edx
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x2f
call fcn.0044ab00
add esp, 8
cmp dword [esp + 0x2f4], ebx
jb 0x42444f
mov ecx, dword [esp + 0x2e0]
push ecx
call fcn.004509e1
add esp, 4
xor ebx, ebx
mov eax, 0xf
mov dword [esp + 0x2f4], eax
mov dword [esp + 0x2f0], ebx
mov byte [esp + 0x2e0], bl
mov dword [esp + 0x172c], eax
mov dword [esp + 0x1728], ebx
mov byte [esp + 0x1718], bl
mov byte [esp + 0x1bf0], 0x32
mov ecx, dword [esp + 0x6c]
mov esi, dword [esp + 0x68]
mov edi, ecx
sub edi, esi
mov eax, 0x92492493
imul edi
add edx, edi
sar edx, 4
mov edi, edx
shr edi, 0x1f
add edi, edx
cmp edi, ebx
mov dword [esp + 0x14], ebx
jle 0x4246b1
mov ebx, dword [esp + 0x10]
jmp 0x4244c0
mov eax, dword [esp + 0x14]
cmp eax, 3
ja case.default.0x4244cd
jmp dword [eax*4 + 0x42af30]
push 0x5120d4
lea ecx, [esp + 0x940]
call fcn.00404b50
mov byte [esp + 0x1bf0], 0x33
mov ecx, dword [esp + 0x6c]
sub ecx, dword [esp + 0x68]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x42450f
call fcn.0046e5b0
mov eax, dword [esp + 0x68]
lea esi, [esp + 0x93c]
call fcn.0044ac90
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x1720]
call fcn.00404c50
mov byte [esp + 0x1bf0], 0x32
cmp dword [esp + 0x954], 0x10
jb 0x424552
mov ecx, dword [esp + 0x940]
push ecx
call fcn.004509e1
add esp, 4
cmp dword [esp + 0x172c], 0x10
mov eax, dword [esp + 0x1718]
mov dword [esp + 0x954], 0xf
mov dword [esp + 0x950], 0
mov byte [esp + 0x940], 0
jae 0x424588
lea eax, [esp + 0x1718]
mov edx, dword [esp + 0x1728]
push eax
mov eax, dword [ebx + 0x84]
inc edx
push edx
add eax, 0xc4
push eax
call fcn.004718bb
add esp, 0xc
jmp 0x42467e
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp ecx, 1
ja 0x4245ce
call fcn.0046e5b0
mov esi, dword [esp + 0x68]
cmp dword [esi + 0x34], 0x10
jb 0x4245d9
mov esi, dword [esi + 0x20]
jmp 0x4245dc
add esi, 0x20
push esi
call fcn.0046e7f3
mov edx, dword [ebx + 0x84]
mov dword [edx + 0xc0], eax
jmp 0x42467b
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
ja 0x424616
call fcn.0046e5b0
mov esi, dword [esp + 0x68]
cmp dword [esi + 0x50], 0x10
jb 0x424621
mov esi, dword [esi + 0x3c]
jmp 0x424624
add esi, 0x3c
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0xe4], eax
jmp 0x42467b
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 3
ja 0x42465b
call fcn.0046e5b0
mov esi, dword [esp + 0x68]
cmp dword [esi + 0x6c], 0x10
jb 0x424666
mov esi, dword [esi + 0x58]
jmp 0x424669
add esi, 0x58
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0xe8], eax
add esp, 4
mov esi, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x14]
inc eax
cmp eax, edi
mov dword [esp + 0x14], eax
jl 0x4244c0
cmp dword [esp + 0x172c], 0x10
jb 0x4246b1
mov edx, dword [esp + 0x1718]
push edx
call fcn.004509e1
add esp, 4
lea esi, [esp + 0x5c]
mov dword [esp + 0x172c], 0xf
mov dword [esp + 0x1728], 0
mov byte [esp + 0x1718], 0
mov byte [esp + 0x1bf0], 6
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
lea eax, [esp + 0x1920]
mov byte [esp + 0x1920], 0x3c
mov byte [esp + 0x1921], 0x55
mov byte [esp + 0x1922], 0x50
mov byte [esp + 0x1923], 0x44
mov byte [esp + 0x1924], 0x41
mov byte [esp + 0x1925], 0x54
mov byte [esp + 0x1926], 0x45
mov byte [esp + 0x1927], 0x5f
mov byte [esp + 0x1928], 0x49
mov byte [esp + 0x1929], 0x4e
mov byte [esp + 0x192a], 0x46
mov byte [esp + 0x192b], 0x4f
mov byte [esp + 0x192c], 0x3e
mov byte [esp + 0x192d], 0
mov dword [esp + 0x1c0], esi
mov dword [esp + 0x1bc], edi
mov byte [esp + 0x1ac], 0
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x424778
sub eax, ecx
push eax
lea eax, [esp + 0x1924]
push eax
lea ecx, [esp + 0x1b0]
call fcn.00404e60
mov byte [esp + 0x1bf0], 0x34
lea eax, [esp + 0x18c8]
mov dword [esp + 0x1a4], esi
mov dword [esp + 0x1a0], edi
mov byte [esp + 0x190], 0
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4247c0
sub eax, edx
push eax
lea ecx, [esp + 0x18cc]
push ecx
lea ecx, [esp + 0x194]
call fcn.00404e60
lea edx, [esp + 0x1a8]
push edx
lea eax, [esp + 0xb34]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x194]
mov byte [esp + 0x1bf8], 0x35
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x36
call fcn.00404c50
cmp dword [esp + 0xb48], ebx
jb 0x42483a
mov ecx, dword [esp + 0xb34]
push ecx
call fcn.004509e1
add esp, 4
mov dword [esp + 0xb48], esi
mov dword [esp + 0xb44], edi
mov byte [esp + 0xb34], 0
cmp dword [esp + 0x1a4], ebx
jb 0x424869
mov edx, dword [esp + 0x190]
push edx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x1a4], esi
mov dword [esp + 0x1a0], edi
mov byte [esp + 0x190], 0
cmp dword [esp + 0x1c0], ebx
jb 0x4248a0
mov eax, dword [esp + 0x1ac]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0x1c0], esi
mov dword [esp + 0x1bc], edi
mov byte [esp + 0x1ac], 0
cmp dword [esp + 0x1664], edi
je 0x424afb
push 1
push 0x511b64
lea ecx, [esp + 0x1e8]
mov dword [esp + 0x200], esi
mov dword [esp + 0x1fc], edi
mov byte [esp + 0x1ec], 0
call fcn.00404e60
lea ecx, [esp + 0x1e0]
push ecx
lea edx, [esp + 0xac]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x37
call fcn.0044ab00
add esp, 8
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x1f8], ebx
jb 0x424934
mov eax, dword [esp + 0x1e4]
push eax
call fcn.004509e1
add esp, 4
mov ecx, dword [esp + 0xb8]
mov esi, dword [esp + 0xb4]
mov edi, ecx
sub edi, esi
mov eax, 0x92492493
imul edi
add edx, edi
sar edx, 4
mov edi, edx
xor ebx, ebx
shr edi, 0x1f
add edi, edx
cmp edi, ebx
mov dword [esp + 0x1f8], 0xf
mov dword [esp + 0x1f4], ebx
mov byte [esp + 0x1e4], bl
mov dword [esp + 0x14], ebx
jle 0x424ae7
mov ebx, dword [esp + 0x10]
jmp 0x424990
mov eax, dword [esp + 0x14]
cmp eax, 3
ja case.default.0x42499d
jmp dword [eax*4 + 0x42af40]
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x4249c7
call fcn.0046e5b0
mov esi, dword [esp + 0xb4]
cmp dword [esi + 0x18], 0x10
jb 0x4249d2
mov esi, dword [esi + 4]
jmp 0x4249d5
add esi, 4
push esi
call fcn.0046e7f3
mov edx, dword [ebx + 0x84]
mov dword [edx + 0xec], eax
jmp 0x424ac5
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x424a12
call fcn.0046e5b0
mov esi, dword [esp + 0xb4]
cmp dword [esi + 0x34], 0x10
jb 0x424a1d
mov esi, dword [esi + 0x20]
jmp 0x424a20
add esi, 0x20
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0xf0], eax
jmp 0x424ac5
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
ja 0x424a5d
call fcn.0046e5b0
mov esi, dword [esp + 0xb4]
cmp dword [esi + 0x50], 0x10
jb 0x424a68
mov esi, dword [esi + 0x3c]
jmp 0x424a6b
add esi, 0x3c
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0xf4], eax
jmp 0x424ac5
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 3
ja 0x424aa5
call fcn.0046e5b0
mov esi, dword [esp + 0xb4]
cmp dword [esi + 0x6c], 0x10
jb 0x424ab0
mov esi, dword [esi + 0x58]
jmp 0x424ab3
add esi, 0x58
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0xf8], eax
mov esi, dword [esp + 0xb8]
mov ecx, dword [esp + 0xbc]
add esp, 4
mov eax, dword [esp + 0x14]
inc eax
cmp eax, edi
mov dword [esp + 0x14], eax
jl 0x424990
lea esi, [esp + 0xa8]
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
lea eax, [esp + 0x1984]
mov byte [esp + 0x1984], 0x3c
mov byte [esp + 0x1985], 0x55
mov byte [esp + 0x1986], 0x50
mov byte [esp + 0x1987], 0x44
mov byte [esp + 0x1988], 0x41
mov byte [esp + 0x1989], 0x54
mov byte [esp + 0x198a], 0x45
mov byte [esp + 0x198b], 0x5f
mov byte [esp + 0x198c], 0x54
mov byte [esp + 0x198d], 0x45
mov byte [esp + 0x198e], 0x58
mov byte [esp + 0x198f], 0x54
mov byte [esp + 0x1990], 0x5f
mov byte [esp + 0x1991], 0x43
mov byte [esp + 0x1992], 0x4f
mov byte [esp + 0x1993], 0x4c
mov byte [esp + 0x1994], 0x4f
mov byte [esp + 0x1995], 0x52
mov byte [esp + 0x1996], 0x3e
mov byte [esp + 0x1997], 0
mov dword [esp + 0x268], esi
mov dword [esp + 0x264], edi
mov byte [esp + 0x254], 0
lea ecx, [eax + 1]
jmp 0x424bc0
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x424bc0
sub eax, ecx
push eax
lea edx, [esp + 0x1988]
push edx
lea ecx, [esp + 0x258]
call fcn.00404e60
mov byte [esp + 0x1bf0], 0x38
lea eax, [esp + 0x18c8]
mov dword [esp + 0x230], esi
mov dword [esp + 0x22c], edi
mov byte [esp + 0x21c], 0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x424c06
sub eax, edx
push eax
lea eax, [esp + 0x18cc]
push eax
lea ecx, [esp + 0x220]
call fcn.00404e60
lea ecx, [esp + 0x250]
push ecx
lea edx, [esp + 0xa1c]
push edx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x220]
mov byte [esp + 0x1bf8], 0x39
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x3a
call fcn.00404c50
cmp dword [esp + 0xa30], ebx
jb 0x424c80
mov eax, dword [esp + 0xa1c]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0xa30], esi
mov dword [esp + 0xa2c], edi
mov byte [esp + 0xa1c], 0
cmp dword [esp + 0x230], ebx
jb 0x424caf
mov ecx, dword [esp + 0x21c]
push ecx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x230], esi
mov dword [esp + 0x22c], edi
mov byte [esp + 0x21c], 0
cmp dword [esp + 0x268], ebx
jb 0x424ce6
mov edx, dword [esp + 0x254]
push edx
call fcn.004509e1
add esp, 4
mov dword [esp + 0x268], esi
mov dword [esp + 0x264], edi
mov byte [esp + 0x254], 0
cmp dword [esp + 0x1664], edi
je 0x424ef7
push 1
push 0x511b64
lea ecx, [esp + 0x290]
mov dword [esp + 0x2a8], esi
mov dword [esp + 0x2a4], edi
mov byte [esp + 0x294], 0
call fcn.00404e60
lea eax, [esp + 0x288]
push eax
lea ecx, [esp + 0x10c]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x3b
call fcn.0044ab00
add esp, 8
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x2a0], ebx
jb 0x424d7a
mov edx, dword [esp + 0x28c]
push edx
call fcn.004509e1
add esp, 4
mov ecx, dword [esp + 0x118]
mov esi, dword [esp + 0x114]
mov edi, ecx
sub edi, esi
mov eax, 0x92492493
imul edi
add edx, edi
sar edx, 4
mov edi, edx
xor ebx, ebx
shr edi, 0x1f
add edi, edx
cmp edi, ebx
mov dword [esp + 0x2a0], 0xf
mov dword [esp + 0x29c], ebx
mov byte [esp + 0x28c], bl
mov dword [esp + 0x14], ebx
jle 0x424ee3
mov ebx, dword [esp + 0x10]
lea ebx, [ebx]
mov eax, dword [esp + 0x14]
sub eax, 0
je 0x424e7e
sub eax, 1
je 0x424e36
sub eax, 1
jne 0x424ed2
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
ja 0x424e11
call fcn.0046e5b0
mov esi, dword [esp + 0x114]
cmp dword [esi + 0x50], 0x10
jb 0x424e1c
mov esi, dword [esi + 0x3c]
jmp 0x424e1f
add esi, 0x3c
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0x104], eax
jmp 0x424ec1
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x424e5c
call fcn.0046e5b0
mov esi, dword [esp + 0x114]
cmp dword [esi + 0x34], 0x10
jb 0x424e67
mov esi, dword [esi + 0x20]
jmp 0x424e6a
add esi, 0x20
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0x100], eax
jmp 0x424ec1
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x424ea1
call fcn.0046e5b0
mov esi, dword [esp + 0x114]
cmp dword [esi + 0x18], 0x10
jb 0x424eac
mov esi, dword [esi + 4]
jmp 0x424eaf
add esi, 4
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0xfc], eax
mov ecx, dword [esp + 0x11c]
mov esi, dword [esp + 0x118]
add esp, 4
mov eax, dword [esp + 0x14]
inc eax
cmp eax, edi
mov dword [esp + 0x14], eax
jl 0x424dd0
lea esi, [esp + 0x108]
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
lea eax, [esp + 0x1940]
mov byte [esp + 0x1940], 0x3c
mov byte [esp + 0x1941], 0x50
mov byte [esp + 0x1942], 0x52
mov byte [esp + 0x1943], 0x4f
mov byte [esp + 0x1944], 0x47
mov byte [esp + 0x1945], 0x52
mov byte [esp + 0x1946], 0x45
mov byte [esp + 0x1947], 0x53
mov byte [esp + 0x1948], 0x53
mov byte [esp + 0x1949], 0x42
mov byte [esp + 0x194a], 0x41
mov byte [esp + 0x194b], 0x52
mov byte [esp + 0x194c], 0x31
mov byte [esp + 0x194d], 0x3e
mov byte [esp + 0x194e], 0
mov dword [esp + 0x310], esi
mov dword [esp + 0x30c], edi
mov byte [esp + 0x2fc], 0
lea ecx, [eax + 1]
nop
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x424f90
sub eax, ecx
push eax
lea edx, [esp + 0x1944]
push edx
lea ecx, [esp + 0x300]
call fcn.00404e60
mov byte [esp + 0x1bf0], 0x3c
lea eax, [esp + 0x18c8]
mov dword [esp + 0x2d8], esi
mov dword [esp + 0x2d4], edi
mov byte [esp + 0x2c4], 0
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x424fd6
sub eax, ecx
push eax
lea eax, [esp + 0x18cc]
push eax
lea ecx, [esp + 0x2c8]
call fcn.00404e60
lea ecx, [esp + 0x2f8]
push ecx
lea edx, [esp + 0xc14]
push edx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x2c8]
mov byte [esp + 0x1bf8], 0x3d
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x3e
call fcn.00404c50
cmp dword [esp + 0xc28], ebx
jb 0x425050
mov eax, dword [esp + 0xc14]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0xc28], esi
mov dword [esp + 0xc24], edi
mov byte [esp + 0xc14], 0
cmp dword [esp + 0x2d8], ebx
jb 0x42507f
mov ecx, dword [esp + 0x2c4]
push ecx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x2d8], esi
mov dword [esp + 0x2d4], edi
mov byte [esp + 0x2c4], 0
cmp dword [esp + 0x310], ebx
jb 0x4250b6
mov edx, dword [esp + 0x2fc]
push edx
call fcn.004509e1
add esp, 4
mov dword [esp + 0x310], esi
mov dword [esp + 0x30c], edi
mov byte [esp + 0x2fc], 0
cmp dword [esp + 0x1664], edi
je 0x4253f1
push 1
push 0x511b64
lea ecx, [esp + 0x338]
mov dword [esp + 0x350], esi
mov dword [esp + 0x34c], edi
mov byte [esp + 0x33c], 0
call fcn.00404e60
lea eax, [esp + 0x330]
push eax
lea ecx, [esp + 0xdc]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x3f
call fcn.0044ab00
add esp, 8
cmp dword [esp + 0x348], ebx
jb 0x425142
mov edx, dword [esp + 0x334]
push edx
call fcn.004509e1
add esp, 4
xor eax, eax
mov ecx, 0xf
mov dword [esp + 0x348], ecx
mov dword [esp + 0x344], eax
mov byte [esp + 0x334], al
mov dword [esp + 0x16d8], ecx
mov dword [esp + 0x16d4], eax
mov byte [esp + 0x16c4], al
mov byte [esp + 0x1bf0], 0x42
mov ecx, dword [esp + 0xe8]
mov edi, dword [esp + 0xe4]
mov esi, ecx
sub esi, edi
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov dword [esp + 0x14], 0
test ebx, ebx
jle 0x4253b7
mov esi, dword [esp + 0x10]
jmp 0x4251c0
mov eax, dword [esp + 0x14]
sub eax, 0
je 0x425277
sub eax, 1
je 0x425229
sub eax, 1
jne 0x42538c
sub ecx, edi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
ja 0x425201
call fcn.0046e5b0
mov edi, dword [esp + 0xe4]
cmp dword [edi + 0x50], 0x10
jb 0x42520c
mov edi, dword [edi + 0x3c]
jmp 0x42520f
add edi, 0x3c
push edi
call fcn.0046e7f3
mov ecx, dword [esi + 0x84]
add esp, 4
mov dword [ecx + 0x12c], eax
jmp 0x42537e
sub ecx, edi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x42524f
call fcn.0046e5b0
mov edi, dword [esp + 0xe4]
cmp dword [edi + 0x34], 0x10
jb 0x42525a
mov edi, dword [edi + 0x20]
jmp 0x42525d
add edi, 0x20
push edi
call fcn.0046e7f3
mov ecx, dword [esi + 0x84]
add esp, 4
mov dword [ecx + 0x128], eax
jmp 0x42537e
push 1
push 0x5120d4
lea ecx, [esp + 0x370]
mov dword [esp + 0x388], 0xf
mov dword [esp + 0x384], 0
mov byte [esp + 0x374], 0
call fcn.00404e60
mov byte [esp + 0x1bf0], 0x43
mov ecx, dword [esp + 0xe8]
sub ecx, dword [esp + 0xe4]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x4252d8
call fcn.0046e5b0
mov eax, dword [esp + 0xe4]
lea esi, [esp + 0x368]
call fcn.0044ac90
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x16cc]
call fcn.00404c50
mov esi, 0x10
mov byte [esp + 0x1bf0], 0x42
cmp dword [esp + 0x380], esi
jb 0x425322
mov ecx, dword [esp + 0x36c]
push ecx
call fcn.004509e1
add esp, 4
mov eax, dword [esp + 0x16c4]
mov dword [esp + 0x380], 0xf
mov dword [esp + 0x37c], 0
mov byte [esp + 0x36c], 0
cmp dword [esp + 0x16d8], esi
jae 0x425357
lea eax, [esp + 0x16c4]
mov edx, dword [esp + 0x16d4]
push eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x84]
inc edx
push edx
add ecx, 0x108
push ecx
call fcn.004718bb
mov esi, dword [esp + 0x1c]
add esp, 0xc
mov ecx, dword [esp + 0xe8]
mov edi, dword [esp + 0xe4]
mov eax, dword [esp + 0x14]
inc eax
cmp eax, ebx
mov dword [esp + 0x14], eax
jl 0x4251c0
cmp dword [esp + 0x16d8], 0x10
jb 0x4253b7
mov edx, dword [esp + 0x16c4]
push edx
call fcn.004509e1
add esp, 4
lea esi, [esp + 0xd8]
mov dword [esp + 0x16d8], 0xf
mov dword [esp + 0x16d4], 0
mov byte [esp + 0x16c4], 0
mov byte [esp + 0x1bf0], 6
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
lea eax, [esp + 0x1930]
mov byte [esp + 0x1930], 0x3c
mov byte [esp + 0x1931], 0x50
mov byte [esp + 0x1932], 0x52
mov byte [esp + 0x1933], 0x4f
mov byte [esp + 0x1934], 0x47
mov byte [esp + 0x1935], 0x52
mov byte [esp + 0x1936], 0x45
mov byte [esp + 0x1937], 0x53
mov byte [esp + 0x1938], 0x53
mov byte [esp + 0x1939], 0x42
mov byte [esp + 0x193a], 0x41
mov byte [esp + 0x193b], 0x52
mov byte [esp + 0x193c], 0x32
mov byte [esp + 0x193d], 0x3e
mov byte [esp + 0x193e], 0
mov dword [esp + 0x3f0], esi
mov dword [esp + 0x3ec], edi
mov byte [esp + 0x3dc], 0
lea ecx, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x425490
sub eax, ecx
push eax
lea eax, [esp + 0x1934]
push eax
lea ecx, [esp + 0x3e0]
call fcn.00404e60
mov byte [esp + 0x1bf0], 0x44
lea eax, [esp + 0x18c8]
mov dword [esp + 0x3b8], esi
mov dword [esp + 0x3b4], edi
mov byte [esp + 0x3a4], 0
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4254d6
sub eax, ecx
push eax
lea ecx, [esp + 0x18cc]
push ecx
lea ecx, [esp + 0x3a8]
call fcn.00404e60
lea edx, [esp + 0x3d8]
push edx
lea eax, [esp + 0xa38]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x3a8]
mov byte [esp + 0x1bf8], 0x45
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x46
call fcn.00404c50
cmp dword [esp + 0xa4c], ebx
jb 0x425550
mov ecx, dword [esp + 0xa38]
push ecx
call fcn.004509e1
add esp, 4
mov dword [esp + 0xa4c], esi
mov dword [esp + 0xa48], edi
mov byte [esp + 0xa38], 0
cmp dword [esp + 0x3b8], ebx
jb 0x42557f
mov edx, dword [esp + 0x3a4]
push edx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x3b8], esi
mov dword [esp + 0x3b4], edi
mov byte [esp + 0x3a4], 0
cmp dword [esp + 0x3f0], ebx
jb 0x4255b6
mov eax, dword [esp + 0x3dc]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0x3f0], esi
mov dword [esp + 0x3ec], edi
mov byte [esp + 0x3dc], 0
cmp dword [esp + 0x1664], edi
je 0x4258f1
push 1
push 0x511b64
lea ecx, [esp + 0x418]
mov dword [esp + 0x430], esi
mov dword [esp + 0x42c], edi
mov byte [esp + 0x41c], 0
call fcn.00404e60
lea ecx, [esp + 0x410]
push ecx
lea edx, [esp + 0xc4]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x47
call fcn.0044ab00
add esp, 8
cmp dword [esp + 0x428], ebx
jb 0x425642
mov eax, dword [esp + 0x414]
push eax
call fcn.004509e1
add esp, 4
xor eax, eax
mov ecx, 0xf
mov dword [esp + 0x428], ecx
mov dword [esp + 0x424], eax
mov byte [esp + 0x414], al
mov dword [esp + 0x1710], ecx
mov dword [esp + 0x170c], eax
mov byte [esp + 0x16fc], al
mov byte [esp + 0x1bf0], 0x4a
mov ecx, dword [esp + 0xd0]
mov edi, dword [esp + 0xcc]
mov esi, ecx
sub esi, edi
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov dword [esp + 0x14], 0
test ebx, ebx
jle 0x4258b7
mov esi, dword [esp + 0x10]
jmp 0x4256c0
mov eax, dword [esp + 0x14]
sub eax, 0
je 0x425777
sub eax, 1
je 0x425729
sub eax, 1
jne 0x42588c
sub ecx, edi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp ecx, 2
ja 0x425701
call fcn.0046e5b0
mov edi, dword [esp + 0xcc]
cmp dword [edi + 0x50], 0x10
jb 0x42570c
mov edi, dword [edi + 0x3c]
jmp 0x42570f
add edi, 0x3c
push edi
call fcn.0046e7f3
mov edx, dword [esi + 0x84]
add esp, 4
mov dword [edx + 0x154], eax
jmp 0x42587e
sub ecx, edi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x42574f
call fcn.0046e5b0
mov edi, dword [esp + 0xcc]
cmp dword [edi + 0x34], 0x10
jb 0x42575a
mov edi, dword [edi + 0x20]
jmp 0x42575d
add edi, 0x20
push edi
call fcn.0046e7f3
mov ecx, dword [esi + 0x84]
add esp, 4
mov dword [ecx + 0x150], eax
jmp 0x42587e
push 1
push 0x5120d4
lea ecx, [esp + 0x450]
mov dword [esp + 0x468], 0xf
mov dword [esp + 0x464], 0
mov byte [esp + 0x454], 0
call fcn.00404e60
mov byte [esp + 0x1bf0], 0x4b
mov ecx, dword [esp + 0xd0]
sub ecx, dword [esp + 0xcc]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x4257d8
call fcn.0046e5b0
mov eax, dword [esp + 0xcc]
lea esi, [esp + 0x448]
call fcn.0044ac90
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x1704]
call fcn.00404c50
mov esi, 0x10
mov byte [esp + 0x1bf0], 0x4a
cmp dword [esp + 0x460], esi
jb 0x425822
mov ecx, dword [esp + 0x44c]
push ecx
call fcn.004509e1
add esp, 4
mov eax, dword [esp + 0x16fc]
mov dword [esp + 0x460], 0xf
mov dword [esp + 0x45c], 0
mov byte [esp + 0x44c], 0
cmp dword [esp + 0x1710], esi
jae 0x425857
lea eax, [esp + 0x16fc]
mov edx, dword [esp + 0x170c]
push eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x84]
inc edx
push edx
add ecx, 0x130
push ecx
call fcn.004718bb
mov esi, dword [esp + 0x1c]
add esp, 0xc
mov ecx, dword [esp + 0xd0]
mov edi, dword [esp + 0xcc]
mov eax, dword [esp + 0x14]
inc eax
cmp eax, ebx
mov dword [esp + 0x14], eax
jl 0x4256c0
cmp dword [esp + 0x1710], 0x10
jb 0x4258b7
mov edx, dword [esp + 0x16fc]
push edx
call fcn.004509e1
add esp, 4
lea esi, [esp + 0xc0]
mov dword [esp + 0x1710], 0xf
mov dword [esp + 0x170c], 0
mov byte [esp + 0x16fc], 0
mov byte [esp + 0x1bf0], 6
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
lea eax, [esp + 0x1908]
mov byte [esp + 0x1908], 0x3c
mov byte [esp + 0x1909], 0x52
mov byte [esp + 0x190a], 0x45
mov byte [esp + 0x190b], 0x43
mov byte [esp + 0x190c], 0x4f
mov byte [esp + 0x190d], 0x56
mov byte [esp + 0x190e], 0x45
mov byte [esp + 0x190f], 0x52
mov byte [esp + 0x1910], 0x5f
mov byte [esp + 0x1911], 0x42
mov byte [esp + 0x1912], 0x54
mov byte [esp + 0x1913], 0x4e
mov byte [esp + 0x1914], 0x3e
mov byte [esp + 0x1915], 0
mov dword [esp + 0x1dc], esi
mov dword [esp + 0x1d8], edi
mov byte [esp + 0x1c8], 0
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x425981
sub eax, ecx
push eax
lea eax, [esp + 0x190c]
push eax
lea ecx, [esp + 0x1cc]
call fcn.00404e60
mov byte [esp + 0x1bf0], 0x4c
lea eax, [esp + 0x18c8]
mov dword [esp + 0x40c], esi
mov dword [esp + 0x408], edi
mov byte [esp + 0x3f8], 0
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4259c7
sub eax, ecx
push eax
lea ecx, [esp + 0x18cc]
push ecx
lea ecx, [esp + 0x3fc]
call fcn.00404e60
lea edx, [esp + 0x1c4]
push edx
lea eax, [esp + 0xa70]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x3fc]
mov byte [esp + 0x1bf8], 0x4d
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x4e
call fcn.00404c50
cmp dword [esp + 0xa84], ebx
jb 0x425a41
mov ecx, dword [esp + 0xa70]
push ecx
call fcn.004509e1
add esp, 4
mov dword [esp + 0xa84], esi
mov dword [esp + 0xa80], edi
mov byte [esp + 0xa70], 0
cmp dword [esp + 0x40c], ebx
jb 0x425a70
mov edx, dword [esp + 0x3f8]
push edx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x40c], esi
mov dword [esp + 0x408], edi
mov byte [esp + 0x3f8], 0
cmp dword [esp + 0x1dc], ebx
jb 0x425aa7
mov eax, dword [esp + 0x1c8]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0x1dc], esi
mov dword [esp + 0x1d8], edi
mov byte [esp + 0x1c8], 0
cmp dword [esp + 0x1664], edi
je 0x425dd1
push 0x511b64
lea ecx, [esp + 0x714]
call fcn.00404b50
lea ecx, [esp + 0x710]
push ecx
lea edx, [esp + 0x7c]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x4f
call fcn.0044ab00
add esp, 8
cmp dword [esp + 0x728], ebx
jb 0x425b18
mov eax, dword [esp + 0x714]
push eax
call fcn.004509e1
add esp, 4
xor eax, eax
mov ecx, 0xf
mov dword [esp + 0x728], ecx
mov dword [esp + 0x724], eax
mov byte [esp + 0x714], al
mov dword [esp + 0x1748], ecx
mov dword [esp + 0x1744], eax
mov byte [esp + 0x1734], al
mov byte [esp + 0x1bf0], 0x52
mov ecx, dword [esp + 0x88]
mov esi, dword [esp + 0x84]
mov edi, ecx
sub edi, esi
mov eax, 0x92492493
imul edi
add edx, edi
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov dword [esp + 0x14], 0
test ebx, ebx
jle 0x425d9a
mov edi, dword [esp + 0x10]
lea ebx, [ebx]
mov eax, dword [esp + 0x14]
cmp eax, 3
ja case.default.0x425b9d
jmp dword [eax*4 + 0x42af50]
push 0x5120d4
lea ecx, [esp + 0x898]
call fcn.00404b50
mov byte [esp + 0x1bf0], 0x53
mov ecx, dword [esp + 0x88]
sub ecx, dword [esp + 0x84]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x425be5
call fcn.0046e5b0
mov eax, dword [esp + 0x84]
lea esi, [esp + 0x894]
call fcn.0044ac90
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x173c]
call fcn.00404c50
mov byte [esp + 0x1bf0], 0x52
cmp dword [esp + 0x8ac], 0x10
jb 0x425c2b
mov edx, dword [esp + 0x898]
push edx
call fcn.004509e1
add esp, 4
cmp dword [esp + 0x1748], 0x10
mov eax, dword [esp + 0x1734]
mov dword [esp + 0x8ac], 0xf
mov dword [esp + 0x8a8], 0
mov byte [esp + 0x898], 0
jae 0x425c61
lea eax, [esp + 0x1734]
mov ecx, dword [edi + 0x84]
push eax
mov eax, dword [esp + 0x1748]
inc eax
push eax
add ecx, 0x15c
push ecx
call fcn.004718bb
add esp, 0xc
jmp 0x425d61
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x425cab
call fcn.0046e5b0
mov esi, dword [esp + 0x84]
cmp dword [esi + 0x34], 0x10
jb 0x425cb6
mov esi, dword [esi + 0x20]
jmp 0x425cb9
add esi, 0x20
push esi
call fcn.0046e7f3
mov ecx, dword [edi + 0x84]
mov dword [ecx + 0x158], eax
jmp 0x425d5e
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
ja 0x425cf6
call fcn.0046e5b0
mov esi, dword [esp + 0x84]
cmp dword [esi + 0x50], 0x10
jb 0x425d01
mov esi, dword [esi + 0x3c]
jmp 0x425d04
add esi, 0x3c
push esi
call fcn.0046e7f3
mov ecx, dword [edi + 0x84]
mov dword [ecx + 0x17c], eax
jmp 0x425d5e
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 3
ja 0x425d3e
call fcn.0046e5b0
mov esi, dword [esp + 0x84]
cmp dword [esi + 0x6c], 0x10
jb 0x425d49
mov esi, dword [esi + 0x58]
jmp 0x425d4c
add esi, 0x58
push esi
call fcn.0046e7f3
mov ecx, dword [edi + 0x84]
mov dword [ecx + 0x180], eax
add esp, 4
mov esi, dword [esp + 0x84]
mov ecx, dword [esp + 0x88]
mov eax, dword [esp + 0x14]
inc eax
cmp eax, ebx
mov dword [esp + 0x14], eax
jl 0x425b90
cmp dword [esp + 0x1748], 0x10
jb 0x425d9a
mov edx, dword [esp + 0x1734]
push edx
call fcn.004509e1
add esp, 4
lea esi, [esp + 0x78]
mov dword [esp + 0x1748], 0xf
mov dword [esp + 0x1744], 0
mov byte [esp + 0x1734], 0
mov byte [esp + 0x1bf0], 6
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
lea eax, [esp + 0x1978]
push eax
lea ecx, [esp + 0x9b0]
mov byte [esp + 0x197c], 0x3c
mov byte [esp + 0x197d], 0x57
mov byte [esp + 0x197e], 0x45
mov byte [esp + 0x197f], 0x42
mov byte [esp + 0x1980], 0x5f
mov byte [esp + 0x1981], 0x57
mov byte [esp + 0x1982], 0x49
mov byte [esp + 0x1983], 0x4e
mov byte [esp + 0x1984], 0x3e
mov byte [esp + 0x1985], 0
call fcn.00404b50
lea ecx, [esp + 0x18c8]
push ecx
lea ecx, [esp + 0x74c]
mov byte [esp + 0x1bf4], 0x54
call fcn.00404b50
lea edx, [esp + 0x9ac]
push edx
lea eax, [esp + 0xaa8]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x750]
mov byte [esp + 0x1bf8], 0x55
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x56
call fcn.00404c50
cmp dword [esp + 0xabc], ebx
jb 0x425ead
mov ecx, dword [esp + 0xaa8]
push ecx
call fcn.004509e1
add esp, 4
mov dword [esp + 0xabc], esi
mov dword [esp + 0xab8], edi
mov byte [esp + 0xaa8], 0
cmp dword [esp + 0x760], ebx
jb 0x425edc
mov edx, dword [esp + 0x74c]
push edx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x760], esi
mov dword [esp + 0x75c], edi
mov byte [esp + 0x74c], 0
cmp dword [esp + 0x9c4], ebx
jb 0x425f13
mov eax, dword [esp + 0x9b0]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0x9c4], esi
mov dword [esp + 0x9c0], edi
mov byte [esp + 0x9b0], 0
cmp dword [esp + 0x1664], edi
je 0x42614b
push 0x511b64
lea ecx, [esp + 0x784]
call fcn.00404b50
lea ecx, [esp + 0x780]
push ecx
lea edx, [esp + 0x94]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x57
call fcn.0044ab00
add esp, 8
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x798], ebx
jb 0x425f8f
mov eax, dword [esp + 0x784]
push eax
call fcn.004509e1
add esp, 4
mov ecx, dword [esp + 0xa0]
mov esi, dword [esp + 0x9c]
mov edi, ecx
sub edi, esi
mov eax, 0x92492493
imul edi
add edx, edi
sar edx, 4
mov edi, edx
xor ebx, ebx
shr edi, 0x1f
add edi, edx
cmp edi, ebx
mov dword [esp + 0x798], 0xf
mov dword [esp + 0x794], ebx
mov byte [esp + 0x784], bl
mov dword [esp + 0x14], ebx
jle 0x426137
mov ebx, dword [esp + 0x10]
nop
mov eax, dword [esp + 0x14]
cmp eax, 3
ja case.default.0x425fed
jmp dword [eax*4 + 0x42af60]
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x426017
call fcn.0046e5b0
mov esi, dword [esp + 0x9c]
cmp dword [esi + 0x18], 0x10
jb 0x426022
mov esi, dword [esi + 4]
jmp 0x426025
add esi, 4
push esi
call fcn.0046e7f3
mov edx, dword [ebx + 0x84]
mov dword [edx + 0x184], eax
jmp 0x426115
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x426062
call fcn.0046e5b0
mov esi, dword [esp + 0x9c]
cmp dword [esi + 0x34], 0x10
jb 0x42606d
mov esi, dword [esi + 0x20]
jmp 0x426070
add esi, 0x20
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0x188], eax
jmp 0x426115
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
ja 0x4260ad
call fcn.0046e5b0
mov esi, dword [esp + 0x9c]
cmp dword [esi + 0x50], 0x10
jb 0x4260b8
mov esi, dword [esi + 0x3c]
jmp 0x4260bb
add esi, 0x3c
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0x18c], eax
jmp 0x426115
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 3
ja 0x4260f5
call fcn.0046e5b0
mov esi, dword [esp + 0x9c]
cmp dword [esi + 0x6c], 0x10
jb 0x426100
mov esi, dword [esi + 0x58]
jmp 0x426103
add esi, 0x58
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0x190], eax
mov esi, dword [esp + 0xa0]
mov ecx, dword [esp + 0xa4]
add esp, 4
mov eax, dword [esp + 0x14]
inc eax
cmp eax, edi
mov dword [esp + 0x14], eax
jl 0x425fe0
lea esi, [esp + 0x90]
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
xor eax, eax
mov byte [esp + 0x1bc0], 0
mov dword [esp + 0x1bc1], eax
mov dword [esp + 0x1bc5], eax
mov dword [esp + 0x1bc9], eax
mov dword [esp + 0x1bcd], eax
mov dword [esp + 0x1bd1], eax
mov dword [esp + 0x1bd5], eax
mov dword [esp + 0x1bd9], eax
mov word [esp + 0x1bdd], ax
mov byte [esp + 0x1bdf], al
mov byte [esp + 0x19dc], 0x3c
mov byte [esp + 0x19dd], 0x48
mov byte [esp + 0x19de], 0x59
mov byte [esp + 0x19df], 0x50
mov byte [esp + 0x19e0], 0x45
mov byte [esp + 0x19e1], 0x52
mov byte [esp + 0x19e2], 0x5f
mov byte [esp + 0x19e3], 0x42
mov byte [esp + 0x19e4], 0x55
mov byte [esp + 0x19e5], 0x54
mov byte [esp + 0x19e6], 0x25
mov byte [esp + 0x19e7], 0x64
mov byte [esp + 0x19e8], 0x3e
mov byte [esp + 0x19e9], al
mov dword [esp + 0x18], edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x14], 0xad4
inc eax
push eax
lea edx, [esp + 0x19e0]
push edx
lea edx, [esp + 0x1bc8]
mov dword [esp + 0x24], eax
call fcn.00444930
add esp, 8
lea eax, [esp + 0x1bc0]
push eax
lea ecx, [esp + 0x5e8]
call fcn.00404b50
lea ecx, [esp + 0x18c8]
push ecx
lea ecx, [esp + 0x8d0]
mov byte [esp + 0x1bf4], 0x58
call fcn.00404b50
lea edx, [esp + 0x5e4]
push edx
lea eax, [esp + 0xae0]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x8d4]
mov byte [esp + 0x1bf8], 0x59
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x5a
call fcn.00404c50
cmp dword [esp + 0xaf4], ebx
jb 0x4262bd
mov ecx, dword [esp + 0xae0]
push ecx
call fcn.004509e1
add esp, 4
mov dword [esp + 0xaf4], esi
mov dword [esp + 0xaf0], edi
mov byte [esp + 0xae0], 0
cmp dword [esp + 0x8e4], ebx
jb 0x4262ec
mov edx, dword [esp + 0x8d0]
push edx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x8e4], esi
mov dword [esp + 0x8e0], edi
mov byte [esp + 0x8d0], 0
cmp dword [esp + 0x5fc], ebx
jb 0x426323
mov eax, dword [esp + 0x5e8]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0x5fc], esi
mov dword [esp + 0x5f8], edi
mov byte [esp + 0x5e8], 0
cmp dword [esp + 0x1664], edi
je 0x42671a
push 0x511b64
lea ecx, [esp + 0x7bc]
call fcn.00404b50
lea ecx, [esp + 0x7b8]
push ecx
lea edx, [esp + 0x30]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x5b
call fcn.0044ab00
add esp, 8
cmp dword [esp + 0x7d0], ebx
jb 0x426394
mov eax, dword [esp + 0x7bc]
push eax
call fcn.004509e1
add esp, 4
xor eax, eax
mov ecx, 0xf
mov dword [esp + 0x7d0], ecx
mov dword [esp + 0x7cc], eax
mov byte [esp + 0x7bc], al
mov dword [esp + 0x16a0], ecx
mov dword [esp + 0x169c], eax
mov byte [esp + 0x168c], al
mov byte [esp + 0x1bf0], 0x5e
mov ecx, dword [esp + 0x3c]
mov esi, dword [esp + 0x38]
mov edi, ecx
sub edi, esi
mov eax, 0x92492493
imul edi
add edx, edi
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov dword [esp + 0x24], 0
test ebx, ebx
jle 0x4266e3
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x24]
cmp eax, 4
ja case.default.0x42640d
jmp dword [eax*4 + 0x42af70]
push 0x5120d4
lea ecx, [esp + 0x978]
call fcn.00404b50
mov byte [esp + 0x1bf0], 0x5f
mov ecx, dword [esp + 0x3c]
sub ecx, dword [esp + 0x38]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x42644f
call fcn.0046e5b0
mov eax, dword [esp + 0x38]
lea esi, [esp + 0x974]
call fcn.0044ac90
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x1694]
call fcn.00404c50
mov byte [esp + 0x1bf0], 0x5e
cmp dword [esp + 0x98c], 0x10
jb 0x426492
mov edx, dword [esp + 0x978]
push edx
call fcn.004509e1
add esp, 4
cmp dword [esp + 0x16a0], 0x10
mov eax, dword [esp + 0x168c]
mov dword [esp + 0x98c], 0xf
mov dword [esp + 0x988], 0
mov byte [esp + 0x978], 0
jae 0x4264c8
lea eax, [esp + 0x168c]
mov ecx, dword [edi + 0x84]
mov edx, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x16a0]
inc eax
push eax
lea eax, [edx + ecx + 0x1b4]
push eax
jmp 0x4266a8
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp ecx, 1
ja 0x42650c
call fcn.0046e5b0
mov esi, dword [esp + 0x38]
cmp dword [esi + 0x34], 0x10
jb 0x426517
mov esi, dword [esi + 0x20]
jmp 0x42651a
add esi, 0x20
push esi
call fcn.0046e7f3
mov edx, dword [edi + 0x84]
mov ecx, dword [esp + 0x18]
add esp, 4
mov dword [ecx + edx - 0x940], eax
jmp 0x4266b0
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
ja 0x42655c
call fcn.0046e5b0
mov esi, dword [esp + 0x38]
cmp dword [esi + 0x50], 0x10
jb 0x426567
mov esi, dword [esi + 0x3c]
jmp 0x42656a
add esi, 0x3c
push esi
call fcn.0046e7f3
mov ecx, dword [edi + 0x84]
mov edx, dword [esp + 0x18]
add esp, 4
mov dword [edx + ecx], eax
jmp 0x4266b0
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 3
ja 0x4265a8
call fcn.0046e5b0
mov esi, dword [esp + 0x38]
cmp dword [esi + 0x6c], 0x10
jb 0x4265b3
mov esi, dword [esi + 0x58]
jmp 0x4265b6
add esi, 0x58
push esi
call fcn.0046e7f3
mov ecx, dword [edi + 0x84]
mov edx, dword [esp + 0x18]
add esp, 4
mov dword [edx + ecx + 0x20], eax
jmp 0x4266b0
push 0x5120d4
lea ecx, [esp + 0x7f4]
call fcn.00404b50
mov byte [esp + 0x1bf0], 0x60
mov ecx, dword [esp + 0x3c]
sub ecx, dword [esp + 0x38]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 4
ja 0x426610
call fcn.0046e5b0
mov eax, dword [esp + 0x38]
add eax, 0x70
lea esi, [esp + 0x7f0]
call fcn.0044ac90
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x1694]
call fcn.00404c50
mov byte [esp + 0x1bf0], 0x5e
cmp dword [esp + 0x808], 0x10
jb 0x426656
mov ecx, dword [esp + 0x7f4]
push ecx
call fcn.004509e1
add esp, 4
cmp dword [esp + 0x16a0], 0x10
mov eax, dword [esp + 0x168c]
mov dword [esp + 0x808], 0xf
mov dword [esp + 0x804], 0
mov byte [esp + 0x7f4], 0
jae 0x42668c
lea eax, [esp + 0x168c]
mov edx, dword [esp + 0x169c]
mov ecx, dword [esp + 0x18]
push eax
mov eax, dword [edi + 0x84]
inc edx
push edx
lea edx, [ecx + eax + 0x2b4]
push edx
call fcn.004718bb
add esp, 0xc
mov ecx, dword [esp + 0x3c]
mov esi, dword [esp + 0x38]
mov eax, dword [esp + 0x24]
inc eax
cmp eax, ebx
mov dword [esp + 0x24], eax
jl 0x426400
cmp dword [esp + 0x16a0], 0x10
jb 0x4266e3
mov eax, dword [esp + 0x168c]
push eax
call fcn.004509e1
add esp, 4
lea esi, [esp + 0x2c]
mov dword [esp + 0x16a0], 0xf
mov dword [esp + 0x169c], 0
mov byte [esp + 0x168c], 0
mov byte [esp + 0x1bf0], 6
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
mov ecx, dword [esp + 0x14]
add dword [esp + 0x20], 0x20
add dword [esp + 0x18], 0x104
mov eax, dword [esp + 0x1c]
add ecx, 4
cmp ecx, 0xaf4
mov dword [esp + 0x14], ecx
jl 0x426214
mov byte [esp + 0x1a3c], 0x3c
mov byte [esp + 0x1a3d], 0x48
mov byte [esp + 0x1a3e], 0x59
mov byte [esp + 0x1a3f], 0x50
mov byte [esp + 0x1a40], 0x45
mov byte [esp + 0x1a41], 0x52
mov byte [esp + 0x1a42], 0x5f
mov byte [esp + 0x1a43], 0x4c
mov byte [esp + 0x1a44], 0x41
mov byte [esp + 0x1a45], 0x42
mov byte [esp + 0x1a46], 0x45
mov byte [esp + 0x1a47], 0x4c
mov byte [esp + 0x1a48], 0x25
mov byte [esp + 0x1a49], 0x64
mov byte [esp + 0x1a4a], 0x3e
mov byte [esp + 0x1a4b], 0
xor eax, eax
mov dword [esp + 0x20], 0xb34
lea esp, [esp]
inc eax
push eax
lea ecx, [esp + 0x1a40]
push ecx
lea edx, [esp + 0x1bc8]
mov dword [esp + 0x2c], eax
call fcn.00444930
add esp, 8
lea edx, [esp + 0x1bc0]
push edx
lea ecx, [esp + 0x620]
call fcn.00404b50
lea eax, [esp + 0x18c8]
push eax
lea ecx, [esp + 0x604]
mov byte [esp + 0x1bf4], 0x61
call fcn.00404b50
lea ecx, [esp + 0x61c]
push ecx
lea edx, [esp + 0xb18]
push edx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x608]
mov byte [esp + 0x1bf8], 0x62
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x63
call fcn.00404c50
cmp dword [esp + 0xb2c], ebx
jb 0x426879
mov eax, dword [esp + 0xb18]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0xb2c], esi
mov dword [esp + 0xb28], edi
mov byte [esp + 0xb18], 0
cmp dword [esp + 0x618], ebx
jb 0x4268a8
mov ecx, dword [esp + 0x604]
push ecx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x618], esi
mov dword [esp + 0x614], edi
mov byte [esp + 0x604], 0
cmp dword [esp + 0x634], ebx
jb 0x4268df
mov edx, dword [esp + 0x620]
push edx
call fcn.004509e1
add esp, 4
mov dword [esp + 0x634], esi
mov dword [esp + 0x630], edi
mov byte [esp + 0x620], 0
cmp dword [esp + 0x1664], edi
je 0x426b54
push 0x511b64
lea ecx, [esp + 0x654]
call fcn.00404b50
lea eax, [esp + 0x650]
push eax
lea ecx, [esp + 0x48]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x64
call fcn.0044ab00
add esp, 8
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x668], ebx
jb 0x426958
mov edx, dword [esp + 0x654]
push edx
call fcn.004509e1
add esp, 4
mov ecx, dword [esp + 0x54]
mov esi, dword [esp + 0x50]
mov edi, ecx
sub edi, esi
mov eax, 0x92492493
imul edi
add edx, edi
sar edx, 4
mov eax, edx
xor ebx, ebx
shr eax, 0x1f
add eax, edx
cmp eax, ebx
mov dword [esp + 0x668], 0xf
mov dword [esp + 0x664], ebx
mov byte [esp + 0x654], bl
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ebx
jle 0x426b43
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
cmp eax, 4
ja case.default.0x4269b7
jmp dword [eax*4 + 0x42af84]
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x4269de
call fcn.0046e5b0
mov esi, dword [esp + 0x50]
cmp dword [esi + 0x18], 0x10
jb 0x4269e9
mov esi, dword [esi + 4]
jmp 0x4269ec
add esi, 4
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [edi + ecx - 0x20], eax
jmp 0x426b25
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x426a24
call fcn.0046e5b0
mov esi, dword [esp + 0x50]
cmp dword [esi + 0x34], 0x10
jb 0x426a41
mov esi, dword [esi + 0x20]
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [edi + ecx], eax
jmp 0x426b25
add esi, 0x20
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [edi + ecx], eax
jmp 0x426b25
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
ja 0x426a7b
call fcn.0046e5b0
mov esi, dword [esp + 0x50]
cmp dword [esi + 0x50], 0x10
jb 0x426a86
mov esi, dword [esi + 0x3c]
jmp 0x426a89
add esi, 0x3c
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [edi + ecx + 0x20], eax
jmp 0x426b25
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 3
ja 0x426ac1
call fcn.0046e5b0
mov esi, dword [esp + 0x50]
cmp dword [esi + 0x6c], 0x10
jb 0x426acc
mov esi, dword [esi + 0x58]
jmp 0x426acf
add esi, 0x58
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [edi + ecx + 0x40], eax
jmp 0x426b25
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 4
ja 0x426b04
call fcn.0046e5b0
mov esi, dword [esp + 0x50]
cmp dword [esi + 0x88], 0x10
jb 0x426b12
mov esi, dword [esi + 0x74]
jmp 0x426b15
add esi, 0x74
push esi
call fcn.0046e7f3
mov ecx, dword [ebx + 0x84]
mov dword [edi + ecx + 0x60], eax
mov ecx, dword [esp + 0x58]
mov esi, dword [esp + 0x54]
add esp, 4
mov eax, dword [esp + 0x18]
inc eax
cmp eax, dword [esp + 0x1c]
mov dword [esp + 0x18], eax
jl 0x4269aa
lea esi, [esp + 0x44]
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
add ecx, 4
cmp ecx, 0xb54
mov dword [esp + 0x20], ecx
jl 0x4267d0
lea edx, [esp + 0x18e4]
push edx
lea ecx, [esp + 0x6c0]
mov byte [esp + 0x18bc], 0x3c
mov byte [esp + 0x18bd], 0x53
mov byte [esp + 0x18be], 0x45
mov byte [esp + 0x18bf], 0x52
mov byte [esp + 0x18c0], 0x56
mov byte [esp + 0x18c1], 0x45
mov byte [esp + 0x18c2], 0x52
mov byte [esp + 0x18c3], 0x5f
mov byte [esp + 0x18c4], 0x57
mov byte [esp + 0x18c5], 0x49
mov byte [esp + 0x18c6], 0x4e
mov byte [esp + 0x18c7], 0x3e
mov byte [esp + 0x18c8], 0
call fcn.00404b50
lea eax, [esp + 0x18b8]
push eax
lea ecx, [esp + 0x688]
mov byte [esp + 0x1bf4], 0x65
call fcn.00404b50
lea ecx, [esp + 0x6bc]
push ecx
lea edx, [esp + 0xb50]
push edx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x68c]
mov byte [esp + 0x1bf8], 0x66
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x67
call fcn.00404c50
cmp dword [esp + 0xb64], ebx
jb 0x426c63
mov eax, dword [esp + 0xb50]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0xb64], esi
mov dword [esp + 0xb60], edi
mov byte [esp + 0xb50], 0
cmp dword [esp + 0x69c], ebx
jb 0x426c92
mov ecx, dword [esp + 0x688]
push ecx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x69c], esi
mov dword [esp + 0x698], edi
mov byte [esp + 0x688], 0
cmp dword [esp + 0x6d4], ebx
jb 0x426cc9
mov edx, dword [esp + 0x6c0]
push edx
call fcn.004509e1
add esp, 4
mov dword [esp + 0x6d4], esi
mov dword [esp + 0x6d0], edi
mov byte [esp + 0x6c0], 0
cmp dword [esp + 0x1664], edi
je 0x426de7
push 0x5120d4
lea ecx, [esp + 0x6f8]
call fcn.00404b50
lea esi, [esp + 0x6f4]
lea eax, [esp + 0x1650]
mov byte [esp + 0x1bf0], 0x68
call fcn.0044ac90
push 0xffffffffffffffff
push edi
mov esi, 0xf
push eax
lea ecx, [esp + 0x1774]
mov dword [esp + 0x178c], esi
mov dword [esp + 0x1788], edi
mov byte [esp + 0x1778], 0
call fcn.00404c50
mov ebx, 0x10
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x70c], ebx
jb 0x426d69
mov eax, dword [esp + 0x6f8]
push eax
call fcn.004509e1
add esp, 4
mov eax, dword [esp + 0x176c]
mov dword [esp + 0x70c], esi
mov dword [esp + 0x708], edi
mov byte [esp + 0x6f8], 0
cmp dword [esp + 0x1780], ebx
jae 0x426d96
lea eax, [esp + 0x176c]
mov ecx, dword [esp + 0x177c]
mov edx, dword [esp + 0x10]
push eax
mov eax, dword [edx + 0x84]
inc ecx
push ecx
add eax, 0xbb4
push eax
call fcn.004718bb
add esp, 0xc
cmp dword [esp + 0x1780], ebx
jb 0x426dd1
mov ecx, dword [esp + 0x176c]
push ecx
call fcn.004509e1
add esp, 4
mov dword [esp + 0x1780], esi
mov dword [esp + 0x177c], edi
mov byte [esp + 0x176c], 0
lea edx, [esp + 0x19a4]
push edx
lea ecx, [esp + 0x768]
mov byte [esp + 0x19a8], 0x3c
mov byte [esp + 0x19a9], 0x4e
mov byte [esp + 0x19aa], 0x55
mov byte [esp + 0x19ab], 0x4d
mov byte [esp + 0x19ac], 0x5f
mov byte [esp + 0x19ad], 0x48
mov byte [esp + 0x19ae], 0x4f
mov byte [esp + 0x19af], 0x52
mov byte [esp + 0x19b0], 0x5a
mov byte [esp + 0x19b1], 0x3e
mov byte [esp + 0x19b2], 0
call fcn.00404b50
lea eax, [esp + 0x18b8]
push eax
lea ecx, [esp + 0x730]
mov byte [esp + 0x1bf4], 0x69
call fcn.00404b50
lea ecx, [esp + 0x764]
push ecx
lea edx, [esp + 0xb88]
push edx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x734]
mov byte [esp + 0x1bf8], 0x6a
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x6b
call fcn.00404c50
cmp dword [esp + 0xb9c], ebx
jb 0x426ecb
mov eax, dword [esp + 0xb88]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0xb9c], esi
mov dword [esp + 0xb98], edi
mov byte [esp + 0xb88], 0
cmp dword [esp + 0x744], ebx
jb 0x426efa
mov ecx, dword [esp + 0x730]
push ecx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x744], esi
mov dword [esp + 0x740], edi
mov byte [esp + 0x730], 0
cmp dword [esp + 0x77c], ebx
jb 0x426f31
mov edx, dword [esp + 0x768]
push edx
call fcn.004509e1
add esp, 4
mov dword [esp + 0x77c], esi
mov dword [esp + 0x778], edi
mov byte [esp + 0x768], 0
cmp dword [esp + 0x1664], edi
je 0x426fed
push 0x5120d8
lea ecx, [esp + 0x7a0]
call fcn.00404b50
lea esi, [esp + 0x79c]
lea eax, [esp + 0x1650]
mov byte [esp + 0x1bf0], 0x6c
call fcn.0044ac90
mov esi, 0x10
cmp dword [eax + 0x18], esi
jb 0x426f8f
mov eax, dword [eax + 4]
jmp 0x426f92
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xbd4], eax
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x7b4], esi
jb 0x426fcc
mov eax, dword [esp + 0x7a0]
push eax
call fcn.004509e1
add esp, 4
mov ebx, esi
mov dword [esp + 0x7b4], 0xf
mov dword [esp + 0x7b0], edi
mov byte [esp + 0x7a0], 0
mov esi, 0xf
lea ecx, [esp + 0x19b0]
push ecx
lea ecx, [esp + 0x810]
mov byte [esp + 0x19b4], 0x3c
mov byte [esp + 0x19b5], 0x4e
mov byte [esp + 0x19b6], 0x55
mov byte [esp + 0x19b7], 0x4d
mov byte [esp + 0x19b8], 0x5f
mov byte [esp + 0x19b9], 0x56
mov byte [esp + 0x19ba], 0x45
mov byte [esp + 0x19bb], 0x52
mov byte [esp + 0x19bc], 0x54
mov byte [esp + 0x19bd], 0x3e
mov byte [esp + 0x19be], 0
call fcn.00404b50
lea edx, [esp + 0x18b8]
push edx
lea ecx, [esp + 0x7d8]
mov byte [esp + 0x1bf4], 0x6d
call fcn.00404b50
lea eax, [esp + 0x80c]
push eax
lea ecx, [esp + 0xbc0]
push ecx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x7dc]
mov byte [esp + 0x1bf8], 0x6e
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x6f
call fcn.00404c50
cmp dword [esp + 0xbd4], ebx
jb 0x4270d1
mov edx, dword [esp + 0xbc0]
push edx
call fcn.004509e1
add esp, 4
mov dword [esp + 0xbd4], esi
mov dword [esp + 0xbd0], edi
mov byte [esp + 0xbc0], 0
cmp dword [esp + 0x7ec], ebx
jb 0x427100
mov eax, dword [esp + 0x7d8]
push eax
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x7ec], esi
mov dword [esp + 0x7e8], edi
mov byte [esp + 0x7d8], 0
cmp dword [esp + 0x824], ebx
jb 0x427137
mov ecx, dword [esp + 0x810]
push ecx
call fcn.004509e1
add esp, 4
mov dword [esp + 0x824], esi
mov dword [esp + 0x820], edi
mov byte [esp + 0x810], 0
cmp dword [esp + 0x1664], edi
je 0x4271f3
push 0x5120d8
lea ecx, [esp + 0x844]
call fcn.00404b50
lea esi, [esp + 0x840]
lea eax, [esp + 0x1650]
mov byte [esp + 0x1bf0], 0x70
call fcn.0044ac90
mov esi, 0x10
cmp dword [eax + 0x18], esi
jb 0x427195
mov eax, dword [eax + 4]
jmp 0x427198
add eax, 4
push eax
call fcn.0046e7f3
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x84]
add esp, 4
mov dword [ecx + 0xbd8], eax
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x858], esi
jb 0x4271d2
mov edx, dword [esp + 0x844]
push edx
call fcn.004509e1
add esp, 4
mov ebx, esi
mov dword [esp + 0x858], 0xf
mov dword [esp + 0x854], edi
mov byte [esp + 0x844], 0
mov esi, 0xf
lea eax, [esp + 0x1a2c]
push eax
lea ecx, [esp + 0x8b4]
mov byte [esp + 0x1a30], 0x3c
mov byte [esp + 0x1a31], 0x42
mov byte [esp + 0x1a32], 0x54
mov byte [esp + 0x1a33], 0x4e
mov byte [esp + 0x1a34], 0x5f
mov byte [esp + 0x1a35], 0x53
mov byte [esp + 0x1a36], 0x54
mov byte [esp + 0x1a37], 0x41
mov byte [esp + 0x1a38], 0x52
mov byte [esp + 0x1a39], 0x54
mov byte [esp + 0x1a3a], 0x5f
mov byte [esp + 0x1a3b], 0x50
mov byte [esp + 0x1a3c], 0x4f
mov byte [esp + 0x1a3d], 0x53
mov byte [esp + 0x1a3e], 0x3e
mov byte [esp + 0x1a3f], 0
call fcn.00404b50
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0x87c]
mov byte [esp + 0x1bf4], 0x71
call fcn.00404b50
lea edx, [esp + 0x8b0]
push edx
lea eax, [esp + 0xbf8]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x880]
mov byte [esp + 0x1bf8], 0x72
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x73
call fcn.00404c50
cmp dword [esp + 0xc0c], ebx
jb 0x4272ff
mov ecx, dword [esp + 0xbf8]
push ecx
call fcn.004509e1
add esp, 4
mov dword [esp + 0xc0c], esi
mov dword [esp + 0xc08], edi
mov byte [esp + 0xbf8], 0
cmp dword [esp + 0x890], ebx
jb 0x42732e
mov edx, dword [esp + 0x87c]
push edx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x890], esi
mov dword [esp + 0x88c], edi
mov byte [esp + 0x87c], 0
cmp dword [esp + 0x8c8], ebx
jb 0x427365
mov eax, dword [esp + 0x8b4]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0x8c8], esi
mov dword [esp + 0x8c4], edi
mov byte [esp + 0x8b4], 0
cmp dword [esp + 0x1664], edi
je 0x4274cb
push 0x511b64
lea ecx, [esp + 0x8ec]
call fcn.00404b50
lea ecx, [esp + 0x8e8]
push ecx
lea edx, [esp + 0x82c]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x74
call fcn.0044ab00
add esp, 8
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x900], ebx
jb 0x4273e1
mov eax, dword [esp + 0x8ec]
push eax
call fcn.004509e1
add esp, 4
mov ecx, dword [esp + 0x838]
sub ecx, dword [esp + 0x834]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
xor eax, eax
mov dword [esp + 0x900], 0xf
mov dword [esp + 0x8fc], 0
mov byte [esp + 0x8ec], 0
mov dword [esp + 0x18], eax
test ebx, ebx
jle 0x4274b7
sub eax, 0
je 0x427471
sub eax, 1
jne 0x4274a6
lea edi, [eax + 1]
lea esi, [esp + 0x828]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x427456
mov eax, dword [eax + 4]
jmp 0x427459
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xbe0], eax
jmp 0x4274a3
xor edi, edi
lea esi, [esp + 0x828]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x42748a
mov eax, dword [eax + 4]
jmp 0x42748d
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xbdc], eax
add esp, 4
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x42742e
lea esi, [esp + 0x828]
call fcn.00441730
xor edi, edi
lea ebx, [edi + 0x10]
lea esi, [edi + 0xf]
lea eax, [esp + 0x1b14]
push eax
lea ecx, [esp + 0x95c]
mov byte [esp + 0x1b18], 0x3c
mov byte [esp + 0x1b19], 0x42
mov byte [esp + 0x1b1a], 0x54
mov byte [esp + 0x1b1b], 0x4e
mov byte [esp + 0x1b1c], 0x5f
mov byte [esp + 0x1b1d], 0x46
mov byte [esp + 0x1b1e], 0x52
mov byte [esp + 0x1b1f], 0x41
mov byte [esp + 0x1b20], 0x4d
mov byte [esp + 0x1b21], 0x45
mov byte [esp + 0x1b22], 0x5f
mov byte [esp + 0x1b23], 0x53
mov byte [esp + 0x1b24], 0x45
mov byte [esp + 0x1b25], 0x4c
mov byte [esp + 0x1b26], 0x45
mov byte [esp + 0x1b27], 0x44
mov byte [esp + 0x1b28], 0x5f
mov byte [esp + 0x1b29], 0x43
mov byte [esp + 0x1b2a], 0x4f
mov byte [esp + 0x1b2b], 0x4c
mov byte [esp + 0x1b2c], 0x4f
mov byte [esp + 0x1b2d], 0x52
mov byte [esp + 0x1b2e], 0x3e
mov byte [esp + 0x1b2f], 0
call fcn.00404b50
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0x924]
mov byte [esp + 0x1bf4], 0x75
call fcn.00404b50
lea edx, [esp + 0x958]
push edx
lea eax, [esp + 0xc30]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x928]
mov byte [esp + 0x1bf8], 0x76
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x77
call fcn.00404c50
cmp dword [esp + 0xc44], ebx
jb 0x427617
mov ecx, dword [esp + 0xc30]
push ecx
call fcn.004509e1
add esp, 4
mov dword [esp + 0xc44], esi
mov dword [esp + 0xc40], edi
mov byte [esp + 0xc30], 0
cmp dword [esp + 0x938], ebx
jb 0x427646
mov edx, dword [esp + 0x924]
push edx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x938], esi
mov dword [esp + 0x934], edi
mov byte [esp + 0x924], 0
cmp dword [esp + 0x970], ebx
jb 0x42767d
mov eax, dword [esp + 0x95c]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0x970], esi
mov dword [esp + 0x96c], edi
mov byte [esp + 0x95c], 0
mov dword [esp + 0x14], edi
cmp dword [esp + 0x1664], edi
je 0x42789a
push 0x511b64
lea ecx, [esp + 0x994]
call fcn.00404b50
lea ecx, [esp + 0x990]
push ecx
lea edx, [esp + 0x5a0]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x78
call fcn.0044ab00
add esp, 8
mov byte [esp + 0x1bf0], 0x7a
cmp dword [esp + 0x9a8], ebx
jb 0x4276fd
mov eax, dword [esp + 0x994]
push eax
call fcn.004509e1
add esp, 4
mov ecx, dword [esp + 0x5ac]
sub ecx, dword [esp + 0x5a8]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
xor eax, eax
cmp ebx, edi
mov dword [esp + 0x9a8], esi
mov dword [esp + 0x9a4], edi
mov byte [esp + 0x994], 0
mov dword [esp + 0x18], eax
jle 0x42781e
sub eax, edi
je 0x4277d1
sub eax, 1
je 0x427795
sub eax, 1
jne 0x42780d
lea edi, [eax + 2]
lea esi, [esp + 0x59c]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x427772
mov eax, dword [eax + 4]
jmp 0x427775
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
or dword [esp + 0x18], 4
mov dword [edx + 0xbec], eax
jmp 0x427808
mov edi, 1
lea esi, [esp + 0x59c]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x4277b1
mov eax, dword [eax + 4]
jmp 0x4277b4
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
or dword [esp + 0x18], 2
mov dword [edx + 0xbe8], eax
jmp 0x427808
xor edi, edi
lea esi, [esp + 0x59c]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x4277ea
mov eax, dword [eax + 4]
jmp 0x4277ed
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
or dword [esp + 0x18], 1
mov dword [edx + 0xbe4], eax
add esp, 4
xor edi, edi
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x427742
test byte [esp + 0x14], 7
je 0x42787e
push 8
call fcn.004509b2
add esp, 4
mov dword [esp + 0x1c], eax
mov byte [esp + 0x1bf0], 0x7b
cmp eax, edi
je 0x427872
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x84]
movzx ecx, byte [edx + 0xbec]
movzx esi, byte [edx + 0xbe8]
movzx edx, byte [edx + 0xbe4]
shl ecx, 8
or ecx, esi
shl ecx, 8
or ecx, edx
push ecx
mov ecx, eax
call fcn.0046622a
jmp 0x427874
xor eax, eax
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x170], eax
lea esi, [esp + 0x59c]
mov byte [esp + 0x1bf0], 6
call fcn.00441730
mov ebx, 0x10
lea esi, [ebx - 1]
lea edx, [esp + 0x1b44]
push edx
lea ecx, [esp + 0xa00]
mov byte [esp + 0x1b48], 0x3c
mov byte [esp + 0x1b49], 0x42
mov byte [esp + 0x1b4a], 0x54
mov byte [esp + 0x1b4b], 0x4e
mov byte [esp + 0x1b4c], 0x5f
mov byte [esp + 0x1b4d], 0x46
mov byte [esp + 0x1b4e], 0x52
mov byte [esp + 0x1b4f], 0x41
mov byte [esp + 0x1b50], 0x4d
mov byte [esp + 0x1b51], 0x45
mov byte [esp + 0x1b52], 0x5f
mov byte [esp + 0x1b53], 0x54
mov byte [esp + 0x1b54], 0x52
mov byte [esp + 0x1b55], 0x41
mov byte [esp + 0x1b56], 0x43
mov byte [esp + 0x1b57], 0x4b
mov byte [esp + 0x1b58], 0x5f
mov byte [esp + 0x1b59], 0x43
mov byte [esp + 0x1b5a], 0x4f
mov byte [esp + 0x1b5b], 0x4c
mov byte [esp + 0x1b5c], 0x4f
mov byte [esp + 0x1b5d], 0x52
mov byte [esp + 0x1b5e], 0x3e
mov byte [esp + 0x1b5f], 0
call fcn.00404b50
lea eax, [esp + 0x18b8]
push eax
lea ecx, [esp + 0x9cc]
mov byte [esp + 0x1bf4], 0x7c
call fcn.00404b50
lea ecx, [esp + 0x9fc]
push ecx
lea edx, [esp + 0xb6c]
push edx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x9d0]
mov byte [esp + 0x1bf8], 0x7d
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x7e
call fcn.00404c50
cmp dword [esp + 0xb80], ebx
jb 0x4279e6
mov eax, dword [esp + 0xb6c]
push eax
call fcn.004509e1
add esp, 4
mov dword [esp + 0xb80], esi
mov dword [esp + 0xb7c], edi
mov byte [esp + 0xb6c], 0
cmp dword [esp + 0x9e0], ebx
jb 0x427a15
mov ecx, dword [esp + 0x9cc]
push ecx
call fcn.004509e1
add esp, 4
mov byte [esp + 0x1bf0], 6
mov dword [esp + 0x9e0], esi
mov dword [esp + 0x9dc], edi
mov byte [esp + 0x9cc], 0
cmp dword [esp + 0xa14], ebx
jb 0x427a4c
mov edx, dword [esp + 0xa00]
push edx
call fcn.004509e1
add esp, 4
mov dword [esp + 0xa14], esi
mov dword [esp + 0xa10], edi
mov byte [esp + 0xa00], 0
mov dword [esp + 0x14], edi
cmp dword [esp + 0x1664], edi
je 0x427c6d
push 0x511b64
lea ecx, [esp + 0x908]
call fcn.00404b50
lea eax, [esp + 0x904]
push eax
lea ecx, [esp + 0x5d0]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x7f
call fcn.0044ab00
add esp, 8
mov byte [esp + 0x1bf0], 0x81
cmp dword [esp + 0x91c], ebx
jb 0x427acc
mov edx, dword [esp + 0x908]
push edx
call fcn.004509e1
add esp, 4
mov ecx, dword [esp + 0x5dc]
sub ecx, dword [esp + 0x5d8]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
xor eax, eax
cmp ebx, edi
mov dword [esp + 0x91c], esi
mov dword [esp + 0x918], edi
mov byte [esp + 0x908], 0
mov dword [esp + 0x18], eax
jle 0x427bed
sub eax, edi
je 0x427ba0
sub eax, 1
je 0x427b64
sub eax, 1
jne 0x427bdc
lea edi, [eax + 2]
lea esi, [esp + 0x5cc]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x427b41
mov eax, dword [eax + 4]
jmp 0x427b44
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
or dword [esp + 0x18], 4
mov dword [edx + 0xbf8], eax
jmp 0x427bd7
mov edi, 1
lea esi, [esp + 0x5cc]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x427b80
mov eax, dword [eax + 4]
jmp 0x427b83
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
or dword [esp + 0x18], 2
mov dword [edx + 0xbf4], eax
jmp 0x427bd7
xor edi, edi
lea esi, [esp + 0x5cc]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x427bb9
mov eax, dword [eax + 4]
jmp 0x427bbc
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
or dword [esp + 0x18], 1
mov dword [edx + 0xbf0], eax
add esp, 4
xor edi, edi
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x427b11
test byte [esp + 0x14], 7
je 0x427c51
push 8
call fcn.004509b2
add esp, 4
mov dword [esp + 0x1c], eax
mov byte [esp + 0x1bf0], 0x82
cmp eax, edi
je 0x427c45
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x84]
movzx ecx, byte [edx + 0xbf8]
movzx esi, byte [edx + 0xbf4]
movzx edx, byte [edx + 0xbf0]
shl ecx, 8
or ecx, esi
shl ecx, 8
or ecx, edx
push ecx
mov ecx, eax
call fcn.0046622a
jmp 0x427c47
xor eax, eax
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x174], eax
lea esi, [esp + 0x5cc]
mov byte [esp + 0x1bf0], 6
call fcn.00441730
mov ebx, 0x10
lea esi, [ebx - 1]
lea edx, [esp + 0x19fc]
push edx
lea ecx, [esp + 0xe74]
mov byte [esp + 0x1a00], 0x3c
mov byte [esp + 0x1a01], 0x42
mov byte [esp + 0x1a02], 0x54
mov byte [esp + 0x1a03], 0x4e
mov byte [esp + 0x1a04], 0x5f
mov byte [esp + 0x1a05], 0x48
mov byte [esp + 0x1a06], 0x4f
mov byte [esp + 0x1a07], 0x52
mov byte [esp + 0x1a08], 0x5a
mov byte [esp + 0x1a09], 0x5f
mov byte [esp + 0x1a0a], 0x47
mov byte [esp + 0x1a0b], 0x41
mov byte [esp + 0x1a0c], 0x50
mov byte [esp + 0x1a0d], 0x3e
mov byte [esp + 0x1a0e], 0
call fcn.00404b50
lea eax, [esp + 0x18b8]
push eax
lea ecx, [esp + 0x114c]
mov byte [esp + 0x1bf4], 0x83
call fcn.00404b50
lea ecx, [esp + 0xe70]
push ecx
lea edx, [esp + 0xa54]
push edx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x1150]
mov byte [esp + 0x1bf8], 0x84
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x85
call fcn.00404c50
cmp dword [esp + 0xa68], ebx
jb 0x427d71
mov eax, dword [esp + 0xa54]
push eax
call fcn.004509e1
add esp, 4
push edi
push 1
lea ecx, [esp + 0x1150]
mov dword [esp + 0xa70], esi
mov dword [esp + 0xa6c], edi
mov byte [esp + 0xa5c], 0
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0xe78]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
cmp dword [esp + 0x1664], edi
je 0x427e29
push 0x5120d8
lea ecx, [esp + 0x12d4]
call fcn.00404b50
lea esi, [esp + 0x12d0]
lea eax, [esp + 0x1650]
mov byte [esp + 0x1bf0], 0x86
call fcn.0044ac90
cmp dword [eax + 0x18], 0x10
jb 0x427df1
mov eax, dword [eax + 4]
jmp 0x427df4
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
push edi
push 1
lea ecx, [esp + 0x12d8]
mov dword [edx + 0xbfc], eax
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
mov esi, 0xf
lea eax, [esp + 0x1a1c]
push eax
lea ecx, [esp + 0x1184]
mov byte [esp + 0x1a20], 0x3c
mov byte [esp + 0x1a21], 0x42
mov byte [esp + 0x1a22], 0x54
mov byte [esp + 0x1a23], 0x4e
mov byte [esp + 0x1a24], 0x5f
mov byte [esp + 0x1a25], 0x56
mov byte [esp + 0x1a26], 0x45
mov byte [esp + 0x1a27], 0x52
mov byte [esp + 0x1a28], 0x54
mov byte [esp + 0x1a29], 0x5f
mov byte [esp + 0x1a2a], 0x47
mov byte [esp + 0x1a2b], 0x41
mov byte [esp + 0x1a2c], 0x50
mov byte [esp + 0x1a2d], 0x3e
mov byte [esp + 0x1a2e], 0
call fcn.00404b50
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0xeac]
mov byte [esp + 0x1bf4], 0x87
call fcn.00404b50
lea edx, [esp + 0x1180]
push edx
lea eax, [esp + 0x15e4]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0xeb0]
mov byte [esp + 0x1bf8], 0x88
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x89
call fcn.00404c50
push edi
push 1
lea ecx, [esp + 0x15e8]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0xeb0]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0x1188]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
cmp dword [esp + 0x1664], edi
je 0x427fc5
push 0x5120d8
lea ecx, [esp + 0xc98]
call fcn.00404b50
lea esi, [esp + 0xc94]
lea eax, [esp + 0x1650]
mov byte [esp + 0x1bf0], 0x8a
call fcn.0044ac90
cmp dword [eax + 0x18], 0x10
jb 0x427f8d
mov eax, dword [eax + 4]
jmp 0x427f90
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
push edi
push 1
lea ecx, [esp + 0xc9c]
mov dword [edx + 0xc00], eax
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
mov esi, 0xf
lea eax, [esp + 0x1acc]
push eax
lea ecx, [esp + 0xee4]
mov byte [esp + 0x1ad0], 0x3c
mov byte [esp + 0x1ad1], 0x4c
mov byte [esp + 0x1ad2], 0x41
mov byte [esp + 0x1ad3], 0x53
mov byte [esp + 0x1ad4], 0x54
mov byte [esp + 0x1ad5], 0x5f
mov byte [esp + 0x1ad6], 0x53
mov byte [esp + 0x1ad7], 0x45
mov byte [esp + 0x1ad8], 0x52
mov byte [esp + 0x1ad9], 0x56
mov byte [esp + 0x1ada], 0x45
mov byte [esp + 0x1adb], 0x52
mov byte [esp + 0x1adc], 0x5f
mov byte [esp + 0x1add], 0x42
mov byte [esp + 0x1ade], 0x47
mov byte [esp + 0x1adf], 0x5f
mov byte [esp + 0x1ae0], 0x4c
mov byte [esp + 0x1ae1], 0x45
mov byte [esp + 0x1ae2], 0x46
mov byte [esp + 0x1ae3], 0x54
mov byte [esp + 0x1ae4], 0x3e
mov byte [esp + 0x1ae5], 0
call fcn.00404b50
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0xcb4]
mov byte [esp + 0x1bf4], 0x8b
call fcn.00404b50
lea edx, [esp + 0xee0]
push edx
lea eax, [esp + 0x1504]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0xcb8]
mov byte [esp + 0x1bf8], 0x8c
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x8d
call fcn.00404c50
push edi
push 1
lea ecx, [esp + 0x1508]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0xcb8]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0xee8]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
cmp dword [esp + 0x1664], edi
je 0x428320
push 0x511b64
lea ecx, [esp + 0x13ec]
call fcn.00404b50
lea ecx, [esp + 0x13e8]
push ecx
lea edx, [esp + 0x528]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x8e
call fcn.0044ab00
add esp, 8
push 0
push 1
lea ecx, [esp + 0x13f0]
call fcn.00404d40
mov dword [esp + 0x1860], 0xf
mov dword [esp + 0x185c], 0
mov byte [esp + 0x184c], 0
mov byte [esp + 0x1bf0], 0x91
mov ecx, dword [esp + 0x534]
sub ecx, dword [esp + 0x530]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
xor eax, eax
mov dword [esp + 0x18], eax
test ebx, ebx
jle 0x4282f7
sub eax, 0
je 0x428256
sub eax, 1
je 0x428219
sub eax, 1
jne 0x4282e6
lea edi, [eax + 2]
lea esi, [esp + 0x524]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x4281f8
mov eax, dword [eax + 4]
jmp 0x4281fb
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xc28], eax
jmp 0x4282e6
mov edi, 1
lea esi, [esp + 0x524]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x428235
mov eax, dword [eax + 4]
jmp 0x428238
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xc24], eax
jmp 0x4282e6
push 0x5120d4
lea ecx, [esp + 0xf1c]
call fcn.00404b50
xor edi, edi
lea esi, [esp + 0x524]
mov byte [esp + 0x1bf0], 0x92
call fcn.00441780
lea esi, [esp + 0xf18]
call fcn.0044ac90
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x1854]
call fcn.00404c50
push edi
push 1
mov ecx, esi
mov byte [esp + 0x1bf8], 0x91
call fcn.00404d40
cmp dword [esp + 0x1860], 0x10
mov eax, dword [esp + 0x184c]
jae 0x4282c3
lea eax, [esp + 0x184c]
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x84]
push eax
mov eax, dword [esp + 0x1860]
inc eax
push eax
add edx, 0xc04
push edx
call fcn.004718bb
add esp, 0xc
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x4281c7
push 0
push 1
lea ecx, [esp + 0x1850]
call fcn.00404d40
lea esi, [esp + 0x524]
mov byte [esp + 0x1bf0], 6
call fcn.00441730
xor edi, edi
lea esi, [edi + 0xf]
lea eax, [esp + 0x1a9c]
push eax
lea ecx, [esp + 0xf54]
mov byte [esp + 0x1aa0], 0x3c
mov byte [esp + 0x1aa1], 0x4c
mov byte [esp + 0x1aa2], 0x41
mov byte [esp + 0x1aa3], 0x53
mov byte [esp + 0x1aa4], 0x54
mov byte [esp + 0x1aa5], 0x5f
mov byte [esp + 0x1aa6], 0x53
mov byte [esp + 0x1aa7], 0x45
mov byte [esp + 0x1aa8], 0x52
mov byte [esp + 0x1aa9], 0x56
mov byte [esp + 0x1aaa], 0x45
mov byte [esp + 0x1aab], 0x52
mov byte [esp + 0x1aac], 0x5f
mov byte [esp + 0x1aad], 0x42
mov byte [esp + 0x1aae], 0x47
mov byte [esp + 0x1aaf], 0x5f
mov byte [esp + 0x1ab0], 0x54
mov byte [esp + 0x1ab1], 0x4f
mov byte [esp + 0x1ab2], 0x50
mov byte [esp + 0x1ab3], 0x3e
mov byte [esp + 0x1ab4], 0
call fcn.00404b50
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0x11bc]
mov byte [esp + 0x1bf4], 0x93
call fcn.00404b50
lea edx, [esp + 0xf50]
push edx
lea eax, [esp + 0x15ac]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x11c0]
mov byte [esp + 0x1bf8], 0x94
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x95
call fcn.00404c50
push edi
push 1
lea ecx, [esp + 0x15b0]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0x11c0]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0xf58]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
cmp dword [esp + 0x1664], edi
je 0x428673
push 0x511b64
lea ecx, [esp + 0x130c]
call fcn.00404b50
lea ecx, [esp + 0x1308]
push ecx
lea edx, [esp + 0x588]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x96
call fcn.0044ab00
add esp, 8
push 0
push 1
lea ecx, [esp + 0x1310]
call fcn.00404d40
mov dword [esp + 0x1828], 0xf
mov dword [esp + 0x1824], 0
mov byte [esp + 0x1814], 0
mov byte [esp + 0x1bf0], 0x99
mov ecx, dword [esp + 0x594]
sub ecx, dword [esp + 0x590]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
xor eax, eax
mov dword [esp + 0x18], eax
test ebx, ebx
jle 0x42864a
sub eax, 0
je 0x4285a9
sub eax, 1
je 0x42856c
sub eax, 1
jne 0x428639
lea edi, [eax + 2]
lea esi, [esp + 0x584]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x42854b
mov eax, dword [eax + 4]
jmp 0x42854e
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xc50], eax
jmp 0x428639
mov edi, 1
lea esi, [esp + 0x584]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x428588
mov eax, dword [eax + 4]
jmp 0x42858b
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xc4c], eax
jmp 0x428639
push 0x5120d4
lea ecx, [esp + 0xf8c]
call fcn.00404b50
xor edi, edi
lea esi, [esp + 0x584]
mov byte [esp + 0x1bf0], 0x9a
call fcn.00441780
lea esi, [esp + 0xf88]
call fcn.0044ac90
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x181c]
call fcn.00404c50
push edi
push 1
mov ecx, esi
mov byte [esp + 0x1bf8], 0x99
call fcn.00404d40
cmp dword [esp + 0x1828], 0x10
mov eax, dword [esp + 0x1814]
jae 0x428616
lea eax, [esp + 0x1814]
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x84]
push eax
mov eax, dword [esp + 0x1828]
inc eax
push eax
add edx, 0xc2c
push edx
call fcn.004718bb
add esp, 0xc
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x42851a
push 0
push 1
lea ecx, [esp + 0x1818]
call fcn.00404d40
lea esi, [esp + 0x584]
mov byte [esp + 0x1bf0], 6
call fcn.00441730
xor edi, edi
lea esi, [edi + 0xf]
lea eax, [esp + 0x1ae4]
push eax
lea ecx, [esp + 0xfc4]
mov byte [esp + 0x1ae8], 0x3c
mov byte [esp + 0x1ae9], 0x4c
mov byte [esp + 0x1aea], 0x41
mov byte [esp + 0x1aeb], 0x53
mov byte [esp + 0x1aec], 0x54
mov byte [esp + 0x1aed], 0x5f
mov byte [esp + 0x1aee], 0x53
mov byte [esp + 0x1aef], 0x45
mov byte [esp + 0x1af0], 0x52
mov byte [esp + 0x1af1], 0x56
mov byte [esp + 0x1af2], 0x45
mov byte [esp + 0x1af3], 0x52
mov byte [esp + 0x1af4], 0x5f
mov byte [esp + 0x1af5], 0x42
mov byte [esp + 0x1af6], 0x47
mov byte [esp + 0x1af7], 0x5f
mov byte [esp + 0x1af8], 0x52
mov byte [esp + 0x1af9], 0x49
mov byte [esp + 0x1afa], 0x47
mov byte [esp + 0x1afb], 0x48
mov byte [esp + 0x1afc], 0x54
mov byte [esp + 0x1afd], 0x3e
mov byte [esp + 0x1afe], 0
call fcn.00404b50
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0x11f4]
mov byte [esp + 0x1bf4], 0x9b
call fcn.00404b50
lea edx, [esp + 0xfc0]
push edx
lea eax, [esp + 0x153c]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x11f8]
mov byte [esp + 0x1bf8], 0x9c
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x9d
call fcn.00404c50
push edi
push 1
lea ecx, [esp + 0x1540]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0x11f8]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0xfc8]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
cmp dword [esp + 0x1664], edi
je 0x4289d6
push 0x511b64
lea ecx, [esp + 0x13b4]
call fcn.00404b50
lea ecx, [esp + 0x13b0]
push ecx
lea edx, [esp + 0x558]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x9e
call fcn.0044ab00
add esp, 8
push 0
push 1
lea ecx, [esp + 0x13b8]
call fcn.00404d40
mov dword [esp + 0x187c], 0xf
mov dword [esp + 0x1878], 0
mov byte [esp + 0x1868], 0
mov byte [esp + 0x1bf0], 0xa1
mov ecx, dword [esp + 0x564]
sub ecx, dword [esp + 0x560]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
xor eax, eax
mov dword [esp + 0x18], eax
test ebx, ebx
jle 0x4289ad
sub eax, 0
je 0x42890c
sub eax, 1
je 0x4288cf
sub eax, 1
jne 0x42899c
lea edi, [eax + 2]
lea esi, [esp + 0x554]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x4288ae
mov eax, dword [eax + 4]
jmp 0x4288b1
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xc78], eax
jmp 0x42899c
mov edi, 1
lea esi, [esp + 0x554]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x4288eb
mov eax, dword [eax + 4]
jmp 0x4288ee
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xc74], eax
jmp 0x42899c
push 0x5120d4
lea ecx, [esp + 0xffc]
call fcn.00404b50
xor edi, edi
lea esi, [esp + 0x554]
mov byte [esp + 0x1bf0], 0xa2
call fcn.00441780
lea esi, [esp + 0xff8]
call fcn.0044ac90
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x1870]
call fcn.00404c50
push edi
push 1
mov ecx, esi
mov byte [esp + 0x1bf8], 0xa1
call fcn.00404d40
cmp dword [esp + 0x187c], 0x10
mov eax, dword [esp + 0x1868]
jae 0x428979
lea eax, [esp + 0x1868]
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x84]
push eax
mov eax, dword [esp + 0x187c]
inc eax
push eax
add edx, 0xc54
push edx
call fcn.004718bb
add esp, 0xc
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x42887d
push 0
push 1
lea ecx, [esp + 0x186c]
call fcn.00404d40
lea esi, [esp + 0x554]
mov byte [esp + 0x1bf0], 6
call fcn.00441730
xor edi, edi
lea esi, [edi + 0xf]
lea eax, [esp + 0x1b2c]
push eax
lea ecx, [esp + 0x1034]
mov byte [esp + 0x1b30], 0x3c
mov byte [esp + 0x1b31], 0x4c
mov byte [esp + 0x1b32], 0x41
mov byte [esp + 0x1b33], 0x53
mov byte [esp + 0x1b34], 0x54
mov byte [esp + 0x1b35], 0x5f
mov byte [esp + 0x1b36], 0x53
mov byte [esp + 0x1b37], 0x45
mov byte [esp + 0x1b38], 0x52
mov byte [esp + 0x1b39], 0x56
mov byte [esp + 0x1b3a], 0x45
mov byte [esp + 0x1b3b], 0x52
mov byte [esp + 0x1b3c], 0x5f
mov byte [esp + 0x1b3d], 0x42
mov byte [esp + 0x1b3e], 0x47
mov byte [esp + 0x1b3f], 0x5f
mov byte [esp + 0x1b40], 0x42
mov byte [esp + 0x1b41], 0x4f
mov byte [esp + 0x1b42], 0x54
mov byte [esp + 0x1b43], 0x54
mov byte [esp + 0x1b44], 0x4f
mov byte [esp + 0x1b45], 0x4d
mov byte [esp + 0x1b46], 0x3e
mov byte [esp + 0x1b47], 0
call fcn.00404b50
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0x122c]
mov byte [esp + 0x1bf4], 0xa3
call fcn.00404b50
lea edx, [esp + 0x1030]
push edx
lea eax, [esp + 0x161c]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x1230]
mov byte [esp + 0x1bf8], 0xa4
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xa5
call fcn.00404c50
push edi
push 1
lea ecx, [esp + 0x1620]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0x1230]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0x1038]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
cmp dword [esp + 0x1664], edi
je 0x428d41
push 0x511b64
lea ecx, [esp + 0x1344]
call fcn.00404b50
lea ecx, [esp + 0x1340]
push ecx
lea edx, [esp + 0x4f8]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xa6
call fcn.0044ab00
add esp, 8
push 0
push 1
lea ecx, [esp + 0x1348]
call fcn.00404d40
mov dword [esp + 0x17b8], 0xf
mov dword [esp + 0x17b4], 0
mov byte [esp + 0x17a4], 0
mov byte [esp + 0x1bf0], 0xa9
mov ecx, dword [esp + 0x504]
sub ecx, dword [esp + 0x500]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
xor eax, eax
mov dword [esp + 0x18], eax
test ebx, ebx
jle 0x428d18
sub eax, 0
je 0x428c77
sub eax, 1
je 0x428c3a
sub eax, 1
jne 0x428d07
lea edi, [eax + 2]
lea esi, [esp + 0x4f4]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x428c19
mov eax, dword [eax + 4]
jmp 0x428c1c
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xca0], eax
jmp 0x428d07
mov edi, 1
lea esi, [esp + 0x4f4]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x428c56
mov eax, dword [eax + 4]
jmp 0x428c59
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xc9c], eax
jmp 0x428d07
push 0x5120d4
lea ecx, [esp + 0x106c]
call fcn.00404b50
xor edi, edi
lea esi, [esp + 0x4f4]
mov byte [esp + 0x1bf0], 0xaa
call fcn.00441780
lea esi, [esp + 0x1068]
call fcn.0044ac90
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x17ac]
call fcn.00404c50
push edi
push 1
mov ecx, esi
mov byte [esp + 0x1bf8], 0xa9
call fcn.00404d40
cmp dword [esp + 0x17b8], 0x10
mov eax, dword [esp + 0x17a4]
jae 0x428ce4
lea eax, [esp + 0x17a4]
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x84]
push eax
mov eax, dword [esp + 0x17b8]
inc eax
push eax
add edx, 0xc7c
push edx
call fcn.004718bb
add esp, 0xc
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x428be8
push 0
push 1
lea ecx, [esp + 0x17a8]
call fcn.00404d40
lea esi, [esp + 0x4f4]
mov byte [esp + 0x1bf0], 6
call fcn.00441730
xor edi, edi
lea esi, [edi + 0xf]
lea eax, [esp + 0x1a60]
push eax
lea ecx, [esp + 0x10a4]
mov byte [esp + 0x1a64], 0x3c
mov byte [esp + 0x1a65], 0x4c
mov byte [esp + 0x1a66], 0x41
mov byte [esp + 0x1a67], 0x53
mov byte [esp + 0x1a68], 0x54
mov byte [esp + 0x1a69], 0x5f
mov byte [esp + 0x1a6a], 0x53
mov byte [esp + 0x1a6b], 0x45
mov byte [esp + 0x1a6c], 0x52
mov byte [esp + 0x1a6d], 0x56
mov byte [esp + 0x1a6e], 0x45
mov byte [esp + 0x1a6f], 0x52
mov byte [esp + 0x1a70], 0x5f
mov byte [esp + 0x1a71], 0x42
mov byte [esp + 0x1a72], 0x55
mov byte [esp + 0x1a73], 0x54
mov byte [esp + 0x1a74], 0x3e
mov byte [esp + 0x1a75], 0
call fcn.00404b50
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0x1264]
mov byte [esp + 0x1bf4], 0xab
call fcn.00404b50
lea edx, [esp + 0x10a0]
push edx
lea eax, [esp + 0x1478]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x1268]
mov byte [esp + 0x1bf8], 0xac
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xad
call fcn.00404c50
push edi
push 1
lea ecx, [esp + 0x147c]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0x1268]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0x10a8]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
cmp dword [esp + 0x1664], edi
je 0x4290aa
push 0x511b64
lea ecx, [esp + 0xd24]
call fcn.00404b50
lea ecx, [esp + 0xd20]
push ecx
lea edx, [esp + 0x468]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xae
call fcn.0044ab00
add esp, 8
push edi
push 1
lea ecx, [esp + 0xd28]
call fcn.00404d40
mov dword [esp + 0x17d4], esi
mov dword [esp + 0x17d0], edi
mov byte [esp + 0x17c0], 0
mov byte [esp + 0x1bf0], 0xb1
mov ecx, dword [esp + 0x474]
sub ecx, dword [esp + 0x470]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
cmp ebx, edi
mov dword [esp + 0x14], edi
jle 0x429084
jmp 0x428f20
cmp dword [esp + 0x14], 3
ja case.default.0x428f2f
mov eax, dword [esp + 0x14]
jmp dword [eax*4 + 0x42af98]
push 0x5120d4
lea ecx, [esp + 0xd40]
call fcn.00404b50
xor edi, edi
lea esi, [esp + 0x464]
mov byte [esp + 0x1bf0], 0xb2
call fcn.00441780
lea esi, [esp + 0xd3c]
call fcn.0044ac90
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x17c8]
call fcn.00404c50
push edi
push 1
mov ecx, esi
mov byte [esp + 0x1bf8], 0xb1
call fcn.00404d40
cmp dword [esp + 0x17d4], 0x10
mov eax, dword [esp + 0x17c0]
jae 0x428fa3
lea eax, [esp + 0x17c0]
mov ecx, dword [esp + 0x17d0]
mov edx, dword [esp + 0x10]
push eax
mov eax, dword [edx + 0x84]
inc ecx
push ecx
add eax, 0xca8
push eax
call fcn.004718bb
add esp, 0xc
jmp case.default.0x428f2f
mov edi, 1
lea esi, [esp + 0x464]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x428fe6
mov eax, dword [eax + 4]
jmp 0x428fe9
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xca4], eax
jmp 0x429070
mov edi, 2
lea esi, [esp + 0x464]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x429020
mov eax, dword [eax + 4]
jmp 0x429023
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xcc8], eax
jmp 0x429070
mov edi, 3
lea esi, [esp + 0x464]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x429057
mov eax, dword [eax + 4]
jmp 0x42905a
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xccc], eax
add esp, 4
mov eax, dword [esp + 0x14]
inc eax
cmp eax, ebx
mov dword [esp + 0x14], eax
jl 0x428f20
push 0
push 1
lea ecx, [esp + 0x17c4]
call fcn.00404d40
lea esi, [esp + 0x464]
mov byte [esp + 0x1bf0], 6
call fcn.00441730
xor edi, edi
lea eax, [esp + 0x1b5c]
push eax
lea ecx, [esp + 0xdb0]
mov byte [esp + 0x1b60], 0x3c
mov byte [esp + 0x1b61], 0x4c
mov byte [esp + 0x1b62], 0x41
mov byte [esp + 0x1b63], 0x53
mov byte [esp + 0x1b64], 0x54
mov byte [esp + 0x1b65], 0x5f
mov byte [esp + 0x1b66], 0x53
mov byte [esp + 0x1b67], 0x45
mov byte [esp + 0x1b68], 0x52
mov byte [esp + 0x1b69], 0x56
mov byte [esp + 0x1b6a], 0x45
mov byte [esp + 0x1b6b], 0x52
mov byte [esp + 0x1b6c], 0x5f
mov byte [esp + 0x1b6d], 0x42
mov byte [esp + 0x1b6e], 0x55
mov byte [esp + 0x1b6f], 0x54
mov byte [esp + 0x1b70], 0x5f
mov byte [esp + 0x1b71], 0x54
mov byte [esp + 0x1b72], 0x45
mov byte [esp + 0x1b73], 0x58
mov byte [esp + 0x1b74], 0x54
mov byte [esp + 0x1b75], 0x5f
mov byte [esp + 0x1b76], 0x43
mov byte [esp + 0x1b77], 0x4f
mov byte [esp + 0x1b78], 0x4c
mov byte [esp + 0x1b79], 0x4f
mov byte [esp + 0x1b7a], 0x52
mov byte [esp + 0x1b7b], 0x3e
mov byte [esp + 0x1b7c], 0
call fcn.00404b50
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0xd78]
mov byte [esp + 0x1bf4], 0xb3
call fcn.00404b50
lea edx, [esp + 0xdac]
push edx
lea eax, [esp + 0x14b0]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0xd7c]
mov byte [esp + 0x1bf8], 0xb4
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xb5
call fcn.00404c50
push edi
push 1
lea ecx, [esp + 0x14b4]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0xd7c]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0xdb4]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
cmp dword [esp + 0x1664], edi
je 0x4293a0
push 0x511b64
lea ecx, [esp + 0xcd0]
call fcn.00404b50
lea ecx, [esp + 0xccc]
push ecx
lea edx, [esp + 0x510]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xb6
call fcn.0044ab00
add esp, 8
push 0
push 1
lea ecx, [esp + 0xcd4]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
mov ecx, dword [esp + 0x51c]
sub ecx, dword [esp + 0x518]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
xor eax, eax
mov dword [esp + 0x18], eax
test ebx, ebx
jle 0x429392
sub eax, 0
je 0x42934c
sub eax, 1
je 0x429315
sub eax, 1
jne 0x429381
lea edi, [eax + 2]
lea esi, [esp + 0x50c]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x4292f7
mov eax, dword [eax + 4]
jmp 0x4292fa
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xcd8], eax
jmp 0x42937e
mov edi, 1
lea esi, [esp + 0x50c]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x429331
mov eax, dword [eax + 4]
jmp 0x429334
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xcd4], eax
jmp 0x42937e
xor edi, edi
lea esi, [esp + 0x50c]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x429365
mov eax, dword [eax + 4]
jmp 0x429368
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xcd0], eax
add esp, 4
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x4292c6
lea esi, [esp + 0x50c]
call fcn.00441730
xor edi, edi
lea eax, [esp + 0x1b9c]
push eax
lea ecx, [esp + 0xde8]
mov byte [esp + 0x1ba0], 0x3c
mov byte [esp + 0x1ba1], 0x4c
mov byte [esp + 0x1ba2], 0x41
mov byte [esp + 0x1ba3], 0x53
mov byte [esp + 0x1ba4], 0x54
mov byte [esp + 0x1ba5], 0x5f
mov byte [esp + 0x1ba6], 0x53
mov byte [esp + 0x1ba7], 0x45
mov byte [esp + 0x1ba8], 0x52
mov byte [esp + 0x1ba9], 0x56
mov byte [esp + 0x1baa], 0x45
mov byte [esp + 0x1bab], 0x52
mov byte [esp + 0x1bac], 0x5f
mov byte [esp + 0x1bad], 0x42
mov byte [esp + 0x1bae], 0x55
mov byte [esp + 0x1baf], 0x54
mov byte [esp + 0x1bb0], 0x5f
mov byte [esp + 0x1bb1], 0x43
mov byte [esp + 0x1bb2], 0x48
mov byte [esp + 0x1bb3], 0x4f
mov byte [esp + 0x1bb4], 0x49
mov byte [esp + 0x1bb5], 0x43
mov byte [esp + 0x1bb6], 0x45
mov byte [esp + 0x1bb7], 0x5f
mov byte [esp + 0x1bb8], 0x54
mov byte [esp + 0x1bb9], 0x45
mov byte [esp + 0x1bba], 0x58
mov byte [esp + 0x1bbb], 0x54
mov byte [esp + 0x1bbc], 0x5f
mov byte [esp + 0x1bbd], 0x43
mov byte [esp + 0x1bbe], 0x4f
mov byte [esp + 0x1bbf], 0x4c
mov byte [esp + 0x1bc0], 0x4f
mov byte [esp + 0x1bc1], 0x52
mov byte [esp + 0x1bc2], 0x3e
mov byte [esp + 0x1bc3], 0
call fcn.00404b50
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0xcec]
mov byte [esp + 0x1bf4], 0xb7
call fcn.00404b50
lea edx, [esp + 0xde4]
push edx
lea eax, [esp + 0x14e8]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0xcf0]
mov byte [esp + 0x1bf8], 0xb8
call fcn.0042b8d0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xb9
call fcn.00404c50
push edi
push 1
lea ecx, [esp + 0x14ec]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0xcf0]
call fcn.00404d40
push edi
push 1
lea ecx, [esp + 0xdec]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
cmp dword [esp + 0x1664], edi
je 0x4296cc
push 0x511b64
lea ecx, [esp + 0xe20]
call fcn.00404b50
lea ecx, [esp + 0xe1c]
push ecx
lea edx, [esp + 0x540]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xba
call fcn.0044ab00
add esp, 8
push 0
push 1
lea ecx, [esp + 0xe24]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
mov ecx, dword [esp + 0x54c]
sub ecx, dword [esp + 0x548]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
xor eax, eax
mov dword [esp + 0x18], eax
test ebx, ebx
jle 0x4296c0
sub eax, 0
je 0x42967a
sub eax, 1
je 0x429643
sub eax, 1
jne 0x4296af
lea edi, [eax + 2]
lea esi, [esp + 0x53c]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x429625
mov edi, 1
lea esi, [esp + 0x53c]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x42965f
mov eax, dword [eax + 4]
jmp 0x429662
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xce0], eax
jmp 0x4296ac
xor edi, edi
lea esi, [esp + 0x53c]
call fcn.00441780
cmp dword [eax + 0x18], 0x10
jb 0x429693
mov eax, dword [eax + 4]
jmp 0x429696
add eax, 4
push eax
call fcn.0046e7f3
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xcdc], eax
add esp, 4
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x4295f4
lea esi, [esp + 0x53c]
call fcn.00441730
lea eax, [esp + 0x1b7c]
push eax
lea ecx, [esp + 0xe90]
mov byte [esp + 0x1b80], 0x3c
mov byte [esp + 0x1b81], 0x4c
mov byte [esp + 0x1b82], 0x41
mov byte [esp + 0x1b83], 0x53
mov byte [esp + 0x1b84], 0x54
mov byte [esp + 0x1b85], 0x5f
mov byte [esp + 0x1b86], 0x53
mov byte [esp + 0x1b87], 0x45
mov byte [esp + 0x1b88], 0x52
mov byte [esp + 0x1b89], 0x56
mov byte [esp + 0x1b8a], 0x45
mov byte [esp + 0x1b8b], 0x52
mov byte [esp + 0x1b8c], 0x5f
mov byte [esp + 0x1b8d], 0x42
mov byte [esp + 0x1b8e], 0x54
mov byte [esp + 0x1b8f], 0x4e
mov byte [esp + 0x1b90], 0x5f
mov byte [esp + 0x1b91], 0x46
mov byte [esp + 0x1b92], 0x52
mov byte [esp + 0x1b93], 0x41
mov byte [esp + 0x1b94], 0x4d
mov byte [esp + 0x1b95], 0x45
mov byte [esp + 0x1b96], 0x5f
mov byte [esp + 0x1b97], 0x43
mov byte [esp + 0x1b98], 0x4f
mov byte [esp + 0x1b99], 0x4c
mov byte [esp + 0x1b9a], 0x4f
mov byte [esp + 0x1b9b], 0x52
mov byte [esp + 0x1b9c], 0x3e
mov byte [esp + 0x1b9d], 0
call fcn.00404b50
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0xe58]
mov byte [esp + 0x1bf4], 0xbb
call fcn.00404b50
lea edx, [esp + 0xe8c]
push edx
lea eax, [esp + 0x1520]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0xe5c]
mov byte [esp + 0x1bf8], 0xbc
call fcn.0042b8d0
push 0xffffffffffffffff
xor ebx, ebx
push ebx
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xbd
call fcn.00404c50
push ebx
push 1
lea ecx, [esp + 0x1524]
call fcn.00404d40
push ebx
push 1
lea ecx, [esp + 0xe5c]
call fcn.00404d40
push ebx
push 1
lea ecx, [esp + 0xe94]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
cmp dword [esp + 0x1664], ebx
je 0x429a90
push 0x511b64
lea ecx, [esp + 0xd08]
call fcn.00404b50
lea ecx, [esp + 0xd04]
push ecx
lea edx, [esp + 0x4b0]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xbe
call fcn.0044ab00
add esp, 8
push ebx
push 1
lea ecx, [esp + 0xd0c]
mov byte [esp + 0x1bf8], 0xc0
call fcn.00404d40
mov ecx, dword [esp + 0x4bc]
sub ecx, dword [esp + 0x4b8]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, ebx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x14], ebx
jle 0x429a11
cmp dword [esp + 0x14], 3
ja case.default.0x429902
mov eax, dword [esp + 0x14]
jmp dword [eax*4 + 0x42afa8]
mov eax, dword [esp + 0x14]
inc eax
cmp eax, dword [esp + 0x1c]
mov dword [esp + 0x14], eax
jl 0x4298f3
test bl, 0xf
je 0x429a7c
push 8
call fcn.004509b2
add esp, 4
mov dword [esp + 0x1c], eax
mov byte [esp + 0x1bf0], 0xc1
test eax, eax
je 0x429a70
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x84]
movzx ecx, byte [edx + 0xcf4]
movzx esi, byte [edx + 0xcf0]
shl ecx, 8
or ecx, esi
movzx esi, byte [edx + 0xcec]
mov edx, dword [edx + 0xce8]
shl ecx, 8
or ecx, esi
push ecx
push edx
push 0
mov ecx, eax
call fcn.004661e1
jmp 0x429a72
xor eax, eax
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x16c], eax
lea esi, [esp + 0x4ac]
mov byte [esp + 0x1bf0], 6
call fcn.00441730
lea edx, [esp + 0x19bc]
push edx
lea ecx, [esp + 0xf38]
mov byte [esp + 0x19c0], 0x3c
mov byte [esp + 0x19c1], 0x53
mov byte [esp + 0x19c2], 0x45
mov byte [esp + 0x19c3], 0x52
mov byte [esp + 0x19c4], 0x56
mov byte [esp + 0x19c5], 0x45
mov byte [esp + 0x19c6], 0x52
mov byte [esp + 0x19c7], 0x5f
mov byte [esp + 0x19c8], 0x42
mov byte [esp + 0x19c9], 0x55
mov byte [esp + 0x19ca], 0x54
mov byte [esp + 0x19cb], 0x3e
mov byte [esp + 0x19cc], 0
call fcn.00404b50
lea eax, [esp + 0x18b8]
push eax
lea ecx, [esp + 0xf00]
mov byte [esp + 0x1bf4], 0xc2
call fcn.00404b50
lea ecx, [esp + 0xf34]
push ecx
lea edx, [esp + 0x1558]
push edx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0xf04]
mov byte [esp + 0x1bf8], 0xc3
call fcn.0042b8d0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xc4
call fcn.00404c50
push 0
push 1
lea ecx, [esp + 0x155c]
call fcn.00404d40
push 0
push 1
lea ecx, [esp + 0xf04]
call fcn.00404d40
push 0
push 1
lea ecx, [esp + 0xf3c]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
cmp dword [esp + 0x1664], 0
je 0x429d5d
push 0x511b64
lea ecx, [esp + 0xf70]
call fcn.00404b50
lea eax, [esp + 0xf6c]
push eax
lea ecx, [esp + 0x670]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xc5
call fcn.0044ab00
add esp, 8
push 0
push 1
lea ecx, [esp + 0xf74]
call fcn.00404d40
mov dword [esp + 0x180c], 0xf
mov dword [esp + 0x1808], 0
mov byte [esp + 0x17f8], 0
mov byte [esp + 0x1bf0], 0xc8
mov ecx, dword [esp + 0x67c]
sub ecx, dword [esp + 0x678]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
xor eax, eax
mov dword [esp + 0x18], eax
test ebx, ebx
jle 0x429d39
sub eax, 0
je 0x429c98
sub eax, 1
jne 0x429d28
push 0x5120d4
lea ecx, [esp + 0xfa8]
call fcn.00404b50
xor edi, edi
lea esi, [esp + 0x66c]
mov byte [esp + 0x1bf0], 0xc9
call fcn.00441780
lea esi, [esp + 0xfa4]
call fcn.0044ac90
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x1800]
call fcn.00404c50
push edi
push 1
mov ecx, esi
mov byte [esp + 0x1bf8], 0xc8
call fcn.00404d40
cmp dword [esp + 0x180c], 0x10
mov eax, dword [esp + 0x17f8]
jae 0x429d05
push 0
push 1
lea ecx, [esp + 0x17fc]
call fcn.00404d40
lea esi, [esp + 0x66c]
mov byte [esp + 0x1bf0], 6
call fcn.00441730
lea edx, [esp + 0x1afc]
push edx
lea ecx, [esp + 0x1018]
mov byte [esp + 0x1b00], 0x3c
mov byte [esp + 0x1b01], 0x53
mov byte [esp + 0x1b02], 0x45
mov byte [esp + 0x1b03], 0x52
mov byte [esp + 0x1b04], 0x56
mov byte [esp + 0x1b05], 0x45
mov byte [esp + 0x1b06], 0x52
mov byte [esp + 0x1b07], 0x5f
mov byte [esp + 0x1b08], 0x42
mov byte [esp + 0x1b09], 0x55
mov byte [esp + 0x1b0a], 0x54
mov byte [esp + 0x1b0b], 0x5f
mov byte [esp + 0x1b0c], 0x54
mov byte [esp + 0x1b0d], 0x45
mov byte [esp + 0x1b0e], 0x58
mov byte [esp + 0x1b0f], 0x54
mov byte [esp + 0x1b10], 0x5f
mov byte [esp + 0x1b11], 0x43
mov byte [esp + 0x1b12], 0x4f
mov byte [esp + 0x1b13], 0x4c
mov byte [esp + 0x1b14], 0x4f
mov byte [esp + 0x1b15], 0x52
mov byte [esp + 0x1b16], 0x3e
mov byte [esp + 0x1b17], 0
call fcn.00404b50
lea eax, [esp + 0x18b8]
push eax
lea ecx, [esp + 0xfe0]
mov byte [esp + 0x1bf4], 0xca
call fcn.00404b50
lea ecx, [esp + 0x1014]
push ecx
lea edx, [esp + 0x1590]
push edx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0xfe4]
mov byte [esp + 0x1bf8], 0xcb
call fcn.0042b8d0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xcc
call fcn.00404c50
push 0
push 1
lea ecx, [esp + 0x1594]
call fcn.00404d40
push 0
push 1
lea ecx, [esp + 0xfe4]
call fcn.00404d40
push 0
push 1
lea ecx, [esp + 0x101c]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
cmp dword [esp + 0x1664], 0
je 0x42a02e
push 0x511b64
lea ecx, [esp + 0x1050]
call fcn.00404b50
lea eax, [esp + 0x104c]
push eax
lea ecx, [esp + 0x570]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xcd
call fcn.0044ab00
add esp, 8
push 0
push 1
lea ecx, [esp + 0x1054]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
mov ecx, dword [esp + 0x57c]
sub ecx, dword [esp + 0x578]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
xor eax, eax
mov dword [esp + 0x18], eax
test ebx, ebx
jle 0x42a022
sub eax, 0
je 0x429fdc
lea esi, [esp + 0x56c]
call fcn.00441730
lea edx, [esp + 0x1a74]
push edx
lea ecx, [esp + 0x10c0]
mov byte [esp + 0x1a78], 0x3c
mov byte [esp + 0x1a79], 0x43
mov byte [esp + 0x1a7a], 0x41
mov byte [esp + 0x1a7b], 0x4e
mov byte [esp + 0x1a7c], 0x43
mov byte [esp + 0x1a7d], 0x45
mov byte [esp + 0x1a7e], 0x4c
mov byte [esp + 0x1a7f], 0x5f
mov byte [esp + 0x1a80], 0x53
mov byte [esp + 0x1a81], 0x45
mov byte [esp + 0x1a82], 0x52
mov byte [esp + 0x1a83], 0x56
mov byte [esp + 0x1a84], 0x45
mov byte [esp + 0x1a85], 0x52
mov byte [esp + 0x1a86], 0x5f
mov byte [esp + 0x1a87], 0x42
mov byte [esp + 0x1a88], 0x54
mov byte [esp + 0x1a89], 0x4e
mov byte [esp + 0x1a8a], 0x3e
mov byte [esp + 0x1a8b], 0
call fcn.00404b50
lea eax, [esp + 0x18b8]
push eax
lea ecx, [esp + 0x1088]
mov byte [esp + 0x1bf4], 0xce
call fcn.00404b50
lea ecx, [esp + 0x10bc]
push ecx
lea edx, [esp + 0x15c8]
push edx
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x108c]
mov byte [esp + 0x1bf8], 0xcf
call fcn.0042b8d0
push 0xffffffffffffffff
xor esi, esi
push esi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xd0
call fcn.00404c50
push esi
push 1
lea ecx, [esp + 0x15cc]
call fcn.00404d40
push esi
push 1
lea ecx, [esp + 0x108c]
call fcn.00404d40
push esi
push 1
lea ecx, [esp + 0x10c4]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
cmp dword [esp + 0x1664], esi
je 0x42a3a4
push 0x511b64
lea ecx, [esp + 0x10f8]
call fcn.00404b50
lea eax, [esp + 0x10f4]
push eax
lea ecx, [esp + 0x4c8]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xd1
call fcn.0044ab00
add esp, 8
push esi
push 1
lea ecx, [esp + 0x10fc]
call fcn.00404d40
mov dword [esp + 0x179c], 0xf
mov dword [esp + 0x1798], esi
mov byte [esp + 0x1788], 0
mov byte [esp + 0x1bf0], 0xd4
mov ecx, dword [esp + 0x4d4]
sub ecx, dword [esp + 0x4d0]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
cmp ebx, esi
mov dword [esp + 0x14], esi
jle 0x42a380
lea eax, [esp + 0x1ab4]
push eax
lea ecx, [esp + 0x11a0]
mov byte [esp + 0x1ab8], 0x3c
mov byte [esp + 0x1ab9], 0x52
mov byte [esp + 0x1aba], 0x45
mov byte [esp + 0x1abb], 0x43
mov byte [esp + 0x1abc], 0x4f
mov byte [esp + 0x1abd], 0x56
mov byte [esp + 0x1abe], 0x45
mov byte [esp + 0x1abf], 0x52
mov byte [esp + 0x1ac0], 0x5f
mov byte [esp + 0x1ac1], 0x53
mov byte [esp + 0x1ac2], 0x45
mov byte [esp + 0x1ac3], 0x52
mov byte [esp + 0x1ac4], 0x56
mov byte [esp + 0x1ac5], 0x45
mov byte [esp + 0x1ac6], 0x52
mov byte [esp + 0x1ac7], 0x5f
mov byte [esp + 0x1ac8], 0x42
mov byte [esp + 0x1ac9], 0x54
mov byte [esp + 0x1aca], 0x4e
mov byte [esp + 0x1acb], 0x3e
mov byte [esp + 0x1acc], 0
call fcn.00404b50
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0x1168]
mov byte [esp + 0x1bf4], 0xd6
call fcn.00404b50
lea edx, [esp + 0x119c]
push edx
lea eax, [esp + 0x1600]
push eax
lea edx, [esp + 0x1674]
lea ecx, [esp + 0x116c]
mov byte [esp + 0x1bf8], 0xd7
call fcn.0042b8d0
push 0xffffffffffffffff
xor esi, esi
push esi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xd8
call fcn.00404c50
push esi
push 1
lea ecx, [esp + 0x1604]
call fcn.00404d40
push esi
push 1
lea ecx, [esp + 0x116c]
call fcn.00404d40
push esi
push 1
lea ecx, [esp + 0x11a4]
mov byte [esp + 0x1bf8], 6
call fcn.00404d40
cmp dword [esp + 0x1664], esi
je 0x42a721
mov ecx, dword [esp + 0x14]
mov dword [ecx], 7
lea ecx, [esp + 0x28]
call fcn.00406900
xor eax, eax
mov ecx, dword [esp + 0x1be8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1bd0]
xor ecx, esp
call fcn.0046e186
mov esp, ebp
pop ebp
ret 4