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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4cb2cf
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x1bd4
call fcn.00460860
mov eax, dword [0x504628]
xor eax, esp
mov dword [esp + 0x1bd0], eax
push ebx
push esi
push edi
mov eax, dword [0x504628]
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 [0x50e888]
mov dword [esp + 0x10], eax
call fcn.004368d0
mov esi, eax
call fcn.0044c7ef
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x41ab67
push 0x80004005
call fcn.00406bd0
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 0x4f78c4
add esi, 0x55c
add ebx, 0x78
push esi
mov dword [esp + 0x1bf8], 0
push ebx
mov dword [ecx], 0
call fcn.0045affb
add esp, 0xc
cmp dword [ebx], 0
jne 0x41abe7
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 0x4232d8
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
jmp 0x4232d8
mov ecx, dword [ebx]
mov esi, dword [esp + 0x10]
push ecx
push 1
add esi, 0x7c
push 4
push esi
call fcn.0045d40d
add esp, 0x10
test eax, eax
jne 0x41ac0e
mov edx, dword [esp + 0x14]
mov dword [edx], 2
jmp 0x41abb7
mov eax, dword [esi]
rol eax, 0xd
xor eax, 0x1bfedf72
mov dword [esi], eax
jne 0x41ac43
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 0x41abd2
xor ecx, ecx
mov edx, 0x2c
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0043ca0c
mov ecx, dword [esp + 0x14]
add esp, 4
mov dword [ecx + 0x80], eax
test eax, eax
jne 0x41ac79
mov eax, dword [esp + 0x14]
mov dword [eax], 5
jmp 0x41abb7
mov ecx, dword [ebx]
mov edx, dword [esi]
push ecx
push edx
push 0x2c
push eax
call fcn.0045d40d
mov edi, dword [esi]
add esp, 0x10
cmp eax, edi
je 0x41ac9f
mov eax, dword [esp + 0x14]
mov dword [eax], 2
jmp 0x4232cf
mov ecx, dword [0x50e88c]
call fcn.004368d0
imul edi, edi, 0x2c
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx + 0x80]
push eax
push edi
call fcn.004351d0
add esp, 8
test eax, eax
jne 0x41acd4
mov edx, dword [esp + 0x14]
mov dword [edx], 4
jmp 0x4232cf
mov esi, dword [esi]
xor edx, edx
xor edi, edi
test esi, esi
jbe 0x41ad09
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x80]
add eax, 0x24
jmp 0x41acf0
mov ecx, dword [eax + 4]
cmp ecx, edx
jbe 0x41acf9
mov edx, ecx
mov ecx, dword [eax]
cmp ecx, edi
jbe 0x41ad01
mov edi, ecx
add eax, 0x2c
sub esi, 1
jne 0x41acf0
push edx
call fcn.0043ca0c
add esp, 4
mov dword [0x50eaa8], eax
cmp edi, 0x8400
jae 0x41ad24
mov edi, 0x8400
push edi
call fcn.0043ca0c
mov edx, dword [esp + 0x14]
add esp, 4
lea ecx, [esp + 0x1918]
push ecx
push edx
mov dword [0x50eaac], 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.004233e0
mov esi, eax
test esi, esi
jne 0x41ad91
mov eax, dword [esp + 0x14]
mov dword [eax], 6
jmp 0x4232cf
mov ecx, dword [esi + 0x20]
mov edx, dword [ebx]
xor edi, edi
push edi
push ecx
push edx
call fcn.0045cedd
mov eax, dword [ebx]
mov ecx, dword [esi + 0x28]
mov edx, dword [0x50eaa8]
add esp, 0xc
push eax
push 1
push ecx
push edx
call fcn.0045d40d
mov ecx, dword [0x50eaac]
push edi
lea eax, [esp + 0x88]
push eax
mov eax, dword [0x50eaa8]
mov dword [esp + 0x8c], edi
mov edx, dword [esi + 0x28]
push ecx
push edx
push eax
call fcn.004c8e60
add esp, 0x24
cmp eax, edi
jne 0x4232c5
mov eax, dword [esp + 0x74]
cmp eax, dword [esi + 0x24]
jne 0x4232c5
mov ecx, dword [0x50eaac]
mov byte [eax + ecx], 0
mov edx, dword [0x50eaac]
push edx
lea ecx, [esp + 0x1670]
call fcn.004041e0
push 0xdc8
mov byte [esp + 0x1bf4], 1
call fcn.0043c9d2
mov ecx, dword [esp + 0x14]
add esp, 4
push 0xdc8
push edi
push eax
mov dword [ecx + 0x84], eax
call fcn.0045f850
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.004041e0
lea eax, [esp + 0x18d8]
push eax
lea ecx, [esp + 0xec8]
mov byte [esp + 0x1bf4], 2
call fcn.004041e0
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.00423cd0
lea ecx, [esp + 0xec4]
call fcn.00404250
lea ecx, [esp + 0xd58]
mov byte [esp + 0x1bf0], 6
call fcn.00404250
lea ebx, [edi + 0x10]
cmp dword [esp + 0x1664], edi
je 0x41b0d0
push 0x4f76fc
lea ecx, [esp + 0x10dc]
call fcn.004041e0
lea eax, [esp + 0x10d8]
push eax
lea ecx, [esp + 0x5b8]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 7
call fcn.00436a40
add esp, 8
lea ecx, [esp + 0x10d8]
mov byte [esp + 0x1bf0], 6
call fcn.00404250
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 0x41b09a
sub eax, 0
je 0x41b058
sub eax, 1
je 0x41b024
sub eax, 1
jne 0x41b089
lea edi, [eax + 2]
lea esi, [esp + 0x5b4]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41b00c
mov eax, dword [eax + 4]
jmp 0x41b00f
add eax, 4
push eax
call fcn.0045a70f
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x84]
mov dword [ecx + 8], eax
jmp 0x41b086
mov edi, 1
lea esi, [esp + 0x5b4]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41b040
mov eax, dword [eax + 4]
jmp 0x41b043
add eax, 4
push eax
call fcn.0045a70f
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x84]
mov dword [ecx + 4], eax
jmp 0x41b086
xor edi, edi
lea esi, [esp + 0x5b4]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41b071
mov eax, dword [eax + 4]
jmp 0x41b074
add eax, 4
push eax
call fcn.0045a70f
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 0x41afdf
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 [0x50eac0], ecx
call fcn.0042f510
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.004041e0
lea edx, [esp + 0x18d8]
push edx
lea ecx, [esp + 0xd94]
mov byte [esp + 0x1bf4], 8
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xa
call fcn.00404280
lea ecx, [esp + 0x1570]
call fcn.00404250
lea ecx, [esp + 0xd90]
call fcn.00404250
lea ecx, [esp + 0x1298]
mov byte [esp + 0x1bf0], 6
call fcn.00404250
mov esi, 0xf
cmp dword [esp + 0x1664], edi
je 0x41b41b
push 0x4f76fc
lea ecx, [esp + 0xc7c]
call fcn.004041e0
lea edx, [esp + 0xc78]
push edx
lea eax, [esp + 0x498]
push eax
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xb
call fcn.00436a40
add esp, 8
lea ecx, [esp + 0xc78]
call fcn.00404250
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 0x41b3f3
cmp dword [esp + 0x14], 3
ja case.default.0x41b2af
mov ecx, dword [esp + 0x14]
jmp dword [ecx*4 + 0x423300]
push 0x4f78cc
lea ecx, [esp + 0xdcc]
call fcn.004041e0
xor edi, edi
lea esi, [esp + 0x494]
mov byte [esp + 0x1bf0], 0xf
call fcn.0042f560
lea esi, [esp + 0xdc8]
call fcn.00436bd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x17e4]
call fcn.00404280
mov ecx, esi
mov byte [esp + 0x1bf0], 0xe
call fcn.00404250
cmp dword [esp + 0x17f0], 0x10
mov eax, dword [esp + 0x17dc]
jae 0x41b320
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.0045d7db
add esp, 0xc
jmp case.default.0x41b2af
mov edi, 1
lea esi, [esp + 0x494]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41b361
mov eax, dword [eax + 4]
jmp 0x41b364
add eax, 4
push eax
call fcn.0045a70f
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x84]
mov dword [ecx + 0xc], eax
jmp 0x41b3df
mov edi, 2
lea esi, [esp + 0x494]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41b395
mov eax, dword [eax + 4]
jmp 0x41b398
add eax, 4
push eax
call fcn.0045a70f
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x84]
mov dword [ecx + 0x30], eax
jmp 0x41b3df
mov edi, 3
lea esi, [esp + 0x494]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41b3c9
mov eax, dword [eax + 4]
jmp 0x41b3cc
add eax, 4
push eax
call fcn.0045a70f
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 0x41b2a0
lea ecx, [esp + 0x17d8]
call fcn.00404250
lea esi, [esp + 0x494]
mov byte [esp + 0x1bf0], 6
call fcn.0042f510
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.004041e0
lea eax, [esp + 0x18d8]
push eax
lea ecx, [esp + 0x1114]
mov byte [esp + 0x1bf4], 0x10
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x12
call fcn.00404280
lea ecx, [esp + 0x14c8]
call fcn.00404250
lea ecx, [esp + 0x1110]
call fcn.00404250
lea ecx, [esp + 0xe00]
mov byte [esp + 0x1bf0], 6
call fcn.00404250
cmp dword [esp + 0x1664], edi
je 0x41b66d
push 0x4f76fc
lea ecx, [esp + 0x137c]
call fcn.004041e0
lea eax, [esp + 0x1378]
push eax
lea ecx, [esp + 0x63c]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x13
call fcn.00436a40
add esp, 8
lea ecx, [esp + 0x1378]
mov byte [esp + 0x1bf0], 6
call fcn.00404250
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 0x41b659
sub eax, 0
je 0x41b61a
sub eax, 1
jne 0x41b64c
lea edi, [eax + 1]
lea esi, [esp + 0x638]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41b602
mov eax, dword [eax + 4]
jmp 0x41b605
add eax, 4
push eax
call fcn.0045a70f
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x84]
mov dword [ecx + 0x68], eax
jmp 0x41b649
xor edi, edi
lea esi, [esp + 0x638]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41b633
mov eax, dword [eax + 4]
jmp 0x41b636
add eax, 4
push eax
call fcn.0045a70f
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 0x41b5de
lea esi, [esp + 0x638]
call fcn.0042f510
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 0x41b720
sub eax, ecx
push eax
lea edx, [esp + 0x1954]
push edx
lea ecx, [esp + 0x31c]
call fcn.004043d0
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 0x41b766
sub eax, edx
push eax
lea eax, [esp + 0x18dc]
push eax
lea ecx, [esp + 0x140]
call fcn.004043d0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x16
call fcn.00404280
cmp dword [esp + 0xaa0], ebx
jb 0x41b7e0
mov eax, dword [esp + 0xa8c]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xaa0], esi
mov dword [esp + 0xa9c], edi
mov byte [esp + 0xa8c], 0
cmp dword [esp + 0x150], ebx
jb 0x41b80f
mov ecx, dword [esp + 0x13c]
push ecx
call fcn.0043ca01
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 0x41b846
mov edx, dword [esp + 0x318]
push edx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x32c], esi
mov dword [esp + 0x328], edi
mov byte [esp + 0x318], 0
cmp dword [esp + 0x1664], edi
je 0x41bb0d
push 0x4f76fc
lea ecx, [esp + 0x6a4]
call fcn.004041e0
lea eax, [esp + 0x6a0]
push eax
lea ecx, [esp + 0xf4]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x17
call fcn.00436a40
add esp, 8
cmp dword [esp + 0x6b8], ebx
jb 0x41b8ba
mov edx, dword [esp + 0x6a4]
push edx
call fcn.0043ca01
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 0x41ba8d
cmp dword [esp + 0x14], 3
ja case.default.0x41b92f
mov eax, dword [esp + 0x14]
jmp dword [eax*4 + 0x423310]
push 0x4f78cc
lea ecx, [esp + 0xe3c]
call fcn.004041e0
xor edi, edi
lea esi, [esp + 0xf0]
mov byte [esp + 0x1bf0], 0x1b
call fcn.0042f560
lea esi, [esp + 0xe38]
call fcn.00436bd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x1758]
call fcn.00404280
mov ecx, esi
mov byte [esp + 0x1bf0], 0x1a
call fcn.00404250
cmp dword [esp + 0x1764], 0x10
mov eax, dword [esp + 0x1750]
jae 0x41b9a0
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.0045d7db
add esp, 0xc
jmp case.default.0x41b92f
mov edi, 1
lea esi, [esp + 0xf0]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41b9e1
mov eax, dword [eax + 4]
jmp 0x41b9e4
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0x38], eax
jmp 0x41ba5f
mov edi, 2
lea esi, [esp + 0xf0]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41ba15
mov eax, dword [eax + 4]
jmp 0x41ba18
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0x5c], eax
jmp 0x41ba5f
mov edi, 3
lea esi, [esp + 0xf0]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41ba49
mov eax, dword [eax + 4]
jmp 0x41ba4c
add eax, 4
push eax
call fcn.0045a70f
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 0x41b920
cmp dword [esp + 0x1764], 0x10
jb 0x41ba8d
mov eax, dword [esp + 0x1750]
push eax
call fcn.0043ca01
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 0x41bae0
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x100]
push ecx
call fcn.00431db0
mov edx, dword [esp + 0x100]
add esp, 4
push edx
call fcn.0043ca01
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.0043ca01
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 0x41bbd0
sub eax, ecx
push eax
lea ecx, [esp + 0x1968]
push ecx
lea ecx, [esp + 0x3c4]
call fcn.004043d0
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 0x41bc16
sub eax, edx
push eax
lea edx, [esp + 0x18dc]
push edx
lea ecx, [esp + 0x204]
call fcn.004043d0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x1e
call fcn.00404280
cmp dword [esp + 0xad8], ebx
jb 0x41bc90
mov edx, dword [esp + 0xac4]
push edx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xad8], esi
mov dword [esp + 0xad4], edi
mov byte [esp + 0xac4], 0
cmp dword [esp + 0x214], ebx
jb 0x41bcbf
mov eax, dword [esp + 0x200]
push eax
call fcn.0043ca01
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 0x41bcf6
mov ecx, dword [esp + 0x3c0]
push ecx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x3d4], esi
mov dword [esp + 0x3d0], edi
mov byte [esp + 0x3c0], 0
cmp dword [esp + 0x1664], edi
je 0x41be9d
push 1
push 0x4f76fc
lea ecx, [esp + 0x23c]
mov dword [esp + 0x254], esi
mov dword [esp + 0x250], edi
mov byte [esp + 0x240], 0
call fcn.004043d0
lea edx, [esp + 0x234]
push edx
lea eax, [esp + 0x124]
push eax
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x1f
call fcn.00436a40
add esp, 8
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x24c], ebx
jb 0x41bd8a
mov ecx, dword [esp + 0x238]
push ecx
call fcn.0043ca01
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 0x41be89
mov eax, ebx
sub eax, 0
je 0x41be2b
sub eax, 1
jne 0x41be80
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 0x41be08
call fcn.0045a4cc
mov esi, dword [esp + 0x12c]
cmp dword [esi + 0x34], 0x10
jb 0x41be13
mov esi, dword [esi + 0x20]
jmp 0x41be16
add esi, 0x20
push esi
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0x70], eax
jmp 0x41be6f
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x41be4e
call fcn.0045a4cc
mov esi, dword [esp + 0x12c]
cmp dword [esi + 0x18], 0x10
jb 0x41be59
mov esi, dword [esi + 4]
jmp 0x41be5c
add esi, 4
push esi
call fcn.0045a70f
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 0x41bdd2
lea esi, [esp + 0x120]
call fcn.0042f510
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 0x41bf50
sub eax, ecx
push eax
lea eax, [esp + 0x18e8]
push eax
lea ecx, [esp + 0x274]
call fcn.004043d0
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 0x41bf96
sub eax, edx
push eax
lea ecx, [esp + 0x18cc]
push ecx
lea ecx, [esp + 0x354]
call fcn.004043d0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x22
call fcn.00404280
cmp dword [esp + 0xbf0], ebx
jb 0x41c010
mov ecx, dword [esp + 0xbdc]
push ecx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xbf0], esi
mov dword [esp + 0xbec], edi
mov byte [esp + 0xbdc], 0
cmp dword [esp + 0x364], ebx
jb 0x41c03f
mov edx, dword [esp + 0x350]
push edx
call fcn.0043ca01
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 0x41c076
mov eax, dword [esp + 0x270]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x284], esi
mov dword [esp + 0x280], edi
mov byte [esp + 0x270], 0
cmp dword [esp + 0x1664], edi
je 0x41c1b1
push 1
mov ebx, 0xf
push 0x4f78cc
lea ecx, [esp + 0x434]
mov dword [esp + 0x44c], ebx
mov dword [esp + 0x448], edi
mov byte [esp + 0x438], 0
call fcn.004043d0
lea esi, [esp + 0x42c]
lea eax, [esp + 0x1650]
mov byte [esp + 0x1bf0], 0x23
call fcn.00436bd0
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.00404280
mov esi, 0x10
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x444], esi
jb 0x41c12e
mov ecx, dword [esp + 0x430]
push ecx
call fcn.0043ca01
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 0x41c15b
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.0045d7db
add esp, 0xc
cmp dword [esp + 0x16f4], esi
jb 0x41c194
mov edx, dword [esp + 0x16e0]
push edx
call fcn.0043ca01
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 0x41c231
sub eax, ecx
push eax
lea eax, [esp + 0x18f0]
push eax
lea ecx, [esp + 0x38c]
call fcn.004043d0
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 0x41c277
sub eax, ecx
push eax
lea ecx, [esp + 0x18cc]
push ecx
lea ecx, [esp + 0x2ac]
call fcn.004043d0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x26
call fcn.00404280
cmp dword [esp + 0xb10], ebx
jb 0x41c2f1
mov ecx, dword [esp + 0xafc]
push ecx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xb10], esi
mov dword [esp + 0xb0c], edi
mov byte [esp + 0xafc], 0
cmp dword [esp + 0x2bc], ebx
jb 0x41c320
mov edx, dword [esp + 0x2a8]
push edx
call fcn.0043ca01
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 0x41c357
mov eax, dword [esp + 0x388]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x39c], esi
mov dword [esp + 0x398], edi
mov byte [esp + 0x388], 0
cmp dword [esp + 0x1664], edi
je 0x41c617
push 0x4f76fc
lea ecx, [esp + 0x860]
call fcn.004041e0
lea ecx, [esp + 0x85c]
push ecx
lea edx, [esp + 0x480]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x27
call fcn.00436a40
add esp, 8
cmp dword [esp + 0x874], ebx
jb 0x41c3cb
mov eax, dword [esp + 0x860]
push eax
call fcn.0043ca01
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 0x41c5dd
lea esp, [esp]
cmp dword [esp + 0x14], 3
ja case.default.0x41c43f
mov ecx, dword [esp + 0x14]
jmp dword [ecx*4 + 0x423320]
push 0x4f78cc
lea ecx, [esp + 0x6dc]
call fcn.004041e0
xor edi, edi
lea esi, [esp + 0x47c]
mov byte [esp + 0x1bf0], 0x2b
call fcn.0042f560
lea esi, [esp + 0x6d8]
call fcn.00436bd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x16b0]
call fcn.00404280
mov esi, 0x10
mov byte [esp + 0x1bf0], 0x2a
cmp dword [esp + 0x6f0], esi
jb 0x41c4af
mov edx, dword [esp + 0x6dc]
push edx
call fcn.0043ca01
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 0x41c4e4
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.0045d7db
add esp, 0xc
jmp case.default.0x41c43f
mov edi, 1
lea esi, [esp + 0x47c]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41c528
mov eax, dword [eax + 4]
jmp 0x41c52b
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0x94], eax
jmp 0x41c5af
mov edi, 2
lea esi, [esp + 0x47c]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41c55f
mov eax, dword [eax + 4]
jmp 0x41c562
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xb8], eax
jmp 0x41c5af
mov edi, 3
lea esi, [esp + 0x47c]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41c596
mov eax, dword [eax + 4]
jmp 0x41c599
add eax, 4
push eax
call fcn.0045a70f
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 0x41c430
cmp dword [esp + 0x16bc], 0x10
jb 0x41c5dd
mov eax, dword [esp + 0x16a8]
push eax
call fcn.0043ca01
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.0042f510
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 0x41c6a0
sub eax, ecx
push eax
lea ecx, [esp + 0x18fc]
push ecx
lea ecx, [esp + 0x178]
call fcn.004043d0
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 0x41c6e6
sub eax, ecx
push eax
lea edx, [esp + 0x18cc]
push edx
lea ecx, [esp + 0x15c]
call fcn.004043d0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x2e
call fcn.00404280
cmp dword [esp + 0xbb8], ebx
jb 0x41c760
mov edx, dword [esp + 0xba4]
push edx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xbb8], esi
mov dword [esp + 0xbb4], edi
mov byte [esp + 0xba4], 0
cmp dword [esp + 0x16c], ebx
jb 0x41c78f
mov eax, dword [esp + 0x158]
push eax
call fcn.0043ca01
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 0x41c7c6
mov ecx, dword [esp + 0x174]
push ecx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x188], esi
mov dword [esp + 0x184], edi
mov byte [esp + 0x174], 0
cmp dword [esp + 0x1664], edi
je 0x41cae8
push 1
push 0x4f76fc
lea ecx, [esp + 0x2e4]
mov dword [esp + 0x2fc], esi
mov dword [esp + 0x2f8], edi
mov byte [esp + 0x2e8], 0
call fcn.004043d0
lea edx, [esp + 0x2dc]
push edx
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x2f
call fcn.00436a40
add esp, 8
cmp dword [esp + 0x2f4], ebx
jb 0x41c84f
mov ecx, dword [esp + 0x2e0]
push ecx
call fcn.0043ca01
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 0x41cab1
mov ebx, dword [esp + 0x10]
jmp 0x41c8c0
mov eax, dword [esp + 0x14]
cmp eax, 3
ja case.default.0x41c8cd
jmp dword [eax*4 + 0x423330]
push 0x4f78cc
lea ecx, [esp + 0x940]
call fcn.004041e0
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 0x41c90f
call fcn.0045a4cc
mov eax, dword [esp + 0x68]
lea esi, [esp + 0x93c]
call fcn.00436bd0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x1720]
call fcn.00404280
mov byte [esp + 0x1bf0], 0x32
cmp dword [esp + 0x954], 0x10
jb 0x41c952
mov ecx, dword [esp + 0x940]
push ecx
call fcn.0043ca01
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 0x41c988
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.0045d7db
add esp, 0xc
jmp 0x41ca7e
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 0x41c9ce
call fcn.0045a4cc
mov esi, dword [esp + 0x68]
cmp dword [esi + 0x34], 0x10
jb 0x41c9d9
mov esi, dword [esi + 0x20]
jmp 0x41c9dc
add esi, 0x20
push esi
call fcn.0045a70f
mov edx, dword [ebx + 0x84]
mov dword [edx + 0xc0], eax
jmp 0x41ca7b
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 0x41ca16
call fcn.0045a4cc
mov esi, dword [esp + 0x68]
cmp dword [esi + 0x50], 0x10
jb 0x41ca21
mov esi, dword [esi + 0x3c]
jmp 0x41ca24
add esi, 0x3c
push esi
call fcn.0045a70f
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0xe4], eax
jmp 0x41ca7b
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 0x41ca5b
call fcn.0045a4cc
mov esi, dword [esp + 0x68]
cmp dword [esi + 0x6c], 0x10
jb 0x41ca66
mov esi, dword [esi + 0x58]
jmp 0x41ca69
add esi, 0x58
push esi
call fcn.0045a70f
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 0x41c8c0
cmp dword [esp + 0x172c], 0x10
jb 0x41cab1
mov edx, dword [esp + 0x1718]
push edx
call fcn.0043ca01
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.0042f510
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 0x41cb78
sub eax, ecx
push eax
lea eax, [esp + 0x1924]
push eax
lea ecx, [esp + 0x1b0]
call fcn.004043d0
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 0x41cbc0
sub eax, edx
push eax
lea ecx, [esp + 0x18cc]
push ecx
lea ecx, [esp + 0x194]
call fcn.004043d0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x36
call fcn.00404280
cmp dword [esp + 0xb48], ebx
jb 0x41cc3a
mov ecx, dword [esp + 0xb34]
push ecx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xb48], esi
mov dword [esp + 0xb44], edi
mov byte [esp + 0xb34], 0
cmp dword [esp + 0x1a4], ebx
jb 0x41cc69
mov edx, dword [esp + 0x190]
push edx
call fcn.0043ca01
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 0x41cca0
mov eax, dword [esp + 0x1ac]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x1c0], esi
mov dword [esp + 0x1bc], edi
mov byte [esp + 0x1ac], 0
cmp dword [esp + 0x1664], edi
je 0x41cefb
push 1
push 0x4f76fc
lea ecx, [esp + 0x1e8]
mov dword [esp + 0x200], esi
mov dword [esp + 0x1fc], edi
mov byte [esp + 0x1ec], 0
call fcn.004043d0
lea ecx, [esp + 0x1e0]
push ecx
lea edx, [esp + 0xac]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x37
call fcn.00436a40
add esp, 8
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x1f8], ebx
jb 0x41cd34
mov eax, dword [esp + 0x1e4]
push eax
call fcn.0043ca01
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 0x41cee7
mov ebx, dword [esp + 0x10]
jmp 0x41cd90
mov eax, dword [esp + 0x14]
cmp eax, 3
ja case.default.0x41cd9d
jmp dword [eax*4 + 0x423340]
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x41cdc7
call fcn.0045a4cc
mov esi, dword [esp + 0xb4]
cmp dword [esi + 0x18], 0x10
jb 0x41cdd2
mov esi, dword [esi + 4]
jmp 0x41cdd5
add esi, 4
push esi
call fcn.0045a70f
mov edx, dword [ebx + 0x84]
mov dword [edx + 0xec], eax
jmp 0x41cec5
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 0x41ce12
call fcn.0045a4cc
mov esi, dword [esp + 0xb4]
cmp dword [esi + 0x34], 0x10
jb 0x41ce1d
mov esi, dword [esi + 0x20]
jmp 0x41ce20
add esi, 0x20
push esi
call fcn.0045a70f
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0xf0], eax
jmp 0x41cec5
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 0x41ce5d
call fcn.0045a4cc
mov esi, dword [esp + 0xb4]
cmp dword [esi + 0x50], 0x10
jb 0x41ce68
mov esi, dword [esi + 0x3c]
jmp 0x41ce6b
add esi, 0x3c
push esi
call fcn.0045a70f
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0xf4], eax
jmp 0x41cec5
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 0x41cea5
call fcn.0045a4cc
mov esi, dword [esp + 0xb4]
cmp dword [esi + 0x6c], 0x10
jb 0x41ceb0
mov esi, dword [esi + 0x58]
jmp 0x41ceb3
add esi, 0x58
push esi
call fcn.0045a70f
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 0x41cd90
lea esi, [esp + 0xa8]
call fcn.0042f510
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 0x41cfc0
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x41cfc0
sub eax, ecx
push eax
lea edx, [esp + 0x1988]
push edx
lea ecx, [esp + 0x258]
call fcn.004043d0
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 0x41d006
sub eax, edx
push eax
lea eax, [esp + 0x18cc]
push eax
lea ecx, [esp + 0x220]
call fcn.004043d0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x3a
call fcn.00404280
cmp dword [esp + 0xa30], ebx
jb 0x41d080
mov eax, dword [esp + 0xa1c]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xa30], esi
mov dword [esp + 0xa2c], edi
mov byte [esp + 0xa1c], 0
cmp dword [esp + 0x230], ebx
jb 0x41d0af
mov ecx, dword [esp + 0x21c]
push ecx
call fcn.0043ca01
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 0x41d0e6
mov edx, dword [esp + 0x254]
push edx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x268], esi
mov dword [esp + 0x264], edi
mov byte [esp + 0x254], 0
cmp dword [esp + 0x1664], edi
je 0x41d2f7
push 1
push 0x4f76fc
lea ecx, [esp + 0x290]
mov dword [esp + 0x2a8], esi
mov dword [esp + 0x2a4], edi
mov byte [esp + 0x294], 0
call fcn.004043d0
lea eax, [esp + 0x288]
push eax
lea ecx, [esp + 0x10c]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x3b
call fcn.00436a40
add esp, 8
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x2a0], ebx
jb 0x41d17a
mov edx, dword [esp + 0x28c]
push edx
call fcn.0043ca01
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 0x41d2e3
mov ebx, dword [esp + 0x10]
lea ebx, [ebx]
mov eax, dword [esp + 0x14]
sub eax, 0
je 0x41d27e
sub eax, 1
je 0x41d236
sub eax, 1
jne 0x41d2d2
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 0x41d211
call fcn.0045a4cc
mov esi, dword [esp + 0x114]
cmp dword [esi + 0x50], 0x10
jb 0x41d21c
mov esi, dword [esi + 0x3c]
jmp 0x41d21f
add esi, 0x3c
push esi
call fcn.0045a70f
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0x104], eax
jmp 0x41d2c1
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 0x41d25c
call fcn.0045a4cc
mov esi, dword [esp + 0x114]
cmp dword [esi + 0x34], 0x10
jb 0x41d267
mov esi, dword [esi + 0x20]
jmp 0x41d26a
add esi, 0x20
push esi
call fcn.0045a70f
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0x100], eax
jmp 0x41d2c1
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x41d2a1
call fcn.0045a4cc
mov esi, dword [esp + 0x114]
cmp dword [esi + 0x18], 0x10
jb 0x41d2ac
mov esi, dword [esi + 4]
jmp 0x41d2af
add esi, 4
push esi
call fcn.0045a70f
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 0x41d1d0
lea esi, [esp + 0x108]
call fcn.0042f510
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 0x41d390
sub eax, ecx
push eax
lea edx, [esp + 0x1944]
push edx
lea ecx, [esp + 0x300]
call fcn.004043d0
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 0x41d3d6
sub eax, ecx
push eax
lea eax, [esp + 0x18cc]
push eax
lea ecx, [esp + 0x2c8]
call fcn.004043d0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x3e
call fcn.00404280
cmp dword [esp + 0xc28], ebx
jb 0x41d450
mov eax, dword [esp + 0xc14]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xc28], esi
mov dword [esp + 0xc24], edi
mov byte [esp + 0xc14], 0
cmp dword [esp + 0x2d8], ebx
jb 0x41d47f
mov ecx, dword [esp + 0x2c4]
push ecx
call fcn.0043ca01
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 0x41d4b6
mov edx, dword [esp + 0x2fc]
push edx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x310], esi
mov dword [esp + 0x30c], edi
mov byte [esp + 0x2fc], 0
cmp dword [esp + 0x1664], edi
je 0x41d7f1
push 1
push 0x4f76fc
lea ecx, [esp + 0x338]
mov dword [esp + 0x350], esi
mov dword [esp + 0x34c], edi
mov byte [esp + 0x33c], 0
call fcn.004043d0
lea eax, [esp + 0x330]
push eax
lea ecx, [esp + 0xdc]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x3f
call fcn.00436a40
add esp, 8
cmp dword [esp + 0x348], ebx
jb 0x41d542
mov edx, dword [esp + 0x334]
push edx
call fcn.0043ca01
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 0x41d7b7
mov esi, dword [esp + 0x10]
jmp 0x41d5c0
mov eax, dword [esp + 0x14]
sub eax, 0
je 0x41d677
sub eax, 1
je 0x41d629
sub eax, 1
jne 0x41d78c
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 0x41d601
call fcn.0045a4cc
mov edi, dword [esp + 0xe4]
cmp dword [edi + 0x50], 0x10
jb 0x41d60c
mov edi, dword [edi + 0x3c]
jmp 0x41d60f
add edi, 0x3c
push edi
call fcn.0045a70f
mov ecx, dword [esi + 0x84]
add esp, 4
mov dword [ecx + 0x12c], eax
jmp 0x41d77e
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 0x41d64f
call fcn.0045a4cc
mov edi, dword [esp + 0xe4]
cmp dword [edi + 0x34], 0x10
jb 0x41d65a
mov edi, dword [edi + 0x20]
jmp 0x41d65d
add edi, 0x20
push edi
call fcn.0045a70f
mov ecx, dword [esi + 0x84]
add esp, 4
mov dword [ecx + 0x128], eax
jmp 0x41d77e
push 1
push 0x4f78cc
lea ecx, [esp + 0x370]
mov dword [esp + 0x388], 0xf
mov dword [esp + 0x384], 0
mov byte [esp + 0x374], 0
call fcn.004043d0
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 0x41d6d8
call fcn.0045a4cc
mov eax, dword [esp + 0xe4]
lea esi, [esp + 0x368]
call fcn.00436bd0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x16cc]
call fcn.00404280
mov esi, 0x10
mov byte [esp + 0x1bf0], 0x42
cmp dword [esp + 0x380], esi
jb 0x41d722
mov ecx, dword [esp + 0x36c]
push ecx
call fcn.0043ca01
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 0x41d757
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.0045d7db
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 0x41d5c0
cmp dword [esp + 0x16d8], 0x10
jb 0x41d7b7
mov edx, dword [esp + 0x16c4]
push edx
call fcn.0043ca01
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.0042f510
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 0x41d890
sub eax, ecx
push eax
lea eax, [esp + 0x1934]
push eax
lea ecx, [esp + 0x3e0]
call fcn.004043d0
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 0x41d8d6
sub eax, ecx
push eax
lea ecx, [esp + 0x18cc]
push ecx
lea ecx, [esp + 0x3a8]
call fcn.004043d0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x46
call fcn.00404280
cmp dword [esp + 0xa4c], ebx
jb 0x41d950
mov ecx, dword [esp + 0xa38]
push ecx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xa4c], esi
mov dword [esp + 0xa48], edi
mov byte [esp + 0xa38], 0
cmp dword [esp + 0x3b8], ebx
jb 0x41d97f
mov edx, dword [esp + 0x3a4]
push edx
call fcn.0043ca01
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 0x41d9b6
mov eax, dword [esp + 0x3dc]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x3f0], esi
mov dword [esp + 0x3ec], edi
mov byte [esp + 0x3dc], 0
cmp dword [esp + 0x1664], edi
je 0x41dcf1
push 1
push 0x4f76fc
lea ecx, [esp + 0x418]
mov dword [esp + 0x430], esi
mov dword [esp + 0x42c], edi
mov byte [esp + 0x41c], 0
call fcn.004043d0
lea ecx, [esp + 0x410]
push ecx
lea edx, [esp + 0xc4]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x47
call fcn.00436a40
add esp, 8
cmp dword [esp + 0x428], ebx
jb 0x41da42
mov eax, dword [esp + 0x414]
push eax
call fcn.0043ca01
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 0x41dcb7
mov esi, dword [esp + 0x10]
jmp 0x41dac0
mov eax, dword [esp + 0x14]
sub eax, 0
je 0x41db77
sub eax, 1
je 0x41db29
sub eax, 1
jne 0x41dc8c
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 0x41db01
call fcn.0045a4cc
mov edi, dword [esp + 0xcc]
cmp dword [edi + 0x50], 0x10
jb 0x41db0c
mov edi, dword [edi + 0x3c]
jmp 0x41db0f
add edi, 0x3c
push edi
call fcn.0045a70f
mov edx, dword [esi + 0x84]
add esp, 4
mov dword [edx + 0x154], eax
jmp 0x41dc7e
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 0x41db4f
call fcn.0045a4cc
mov edi, dword [esp + 0xcc]
cmp dword [edi + 0x34], 0x10
jb 0x41db5a
mov edi, dword [edi + 0x20]
jmp 0x41db5d
add edi, 0x20
push edi
call fcn.0045a70f
mov ecx, dword [esi + 0x84]
add esp, 4
mov dword [ecx + 0x150], eax
jmp 0x41dc7e
push 1
push 0x4f78cc
lea ecx, [esp + 0x450]
mov dword [esp + 0x468], 0xf
mov dword [esp + 0x464], 0
mov byte [esp + 0x454], 0
call fcn.004043d0
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 0x41dbd8
call fcn.0045a4cc
mov eax, dword [esp + 0xcc]
lea esi, [esp + 0x448]
call fcn.00436bd0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x1704]
call fcn.00404280
mov esi, 0x10
mov byte [esp + 0x1bf0], 0x4a
cmp dword [esp + 0x460], esi
jb 0x41dc22
mov ecx, dword [esp + 0x44c]
push ecx
call fcn.0043ca01
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 0x41dc57
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.0045d7db
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 0x41dac0
cmp dword [esp + 0x1710], 0x10
jb 0x41dcb7
mov edx, dword [esp + 0x16fc]
push edx
call fcn.0043ca01
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.0042f510
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 0x41dd81
sub eax, ecx
push eax
lea eax, [esp + 0x190c]
push eax
lea ecx, [esp + 0x1cc]
call fcn.004043d0
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 0x41ddc7
sub eax, ecx
push eax
lea ecx, [esp + 0x18cc]
push ecx
lea ecx, [esp + 0x3fc]
call fcn.004043d0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x4e
call fcn.00404280
cmp dword [esp + 0xa84], ebx
jb 0x41de41
mov ecx, dword [esp + 0xa70]
push ecx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xa84], esi
mov dword [esp + 0xa80], edi
mov byte [esp + 0xa70], 0
cmp dword [esp + 0x40c], ebx
jb 0x41de70
mov edx, dword [esp + 0x3f8]
push edx
call fcn.0043ca01
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 0x41dea7
mov eax, dword [esp + 0x1c8]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x1dc], esi
mov dword [esp + 0x1d8], edi
mov byte [esp + 0x1c8], 0
cmp dword [esp + 0x1664], edi
je 0x41e1d1
push 0x4f76fc
lea ecx, [esp + 0x714]
call fcn.004041e0
lea ecx, [esp + 0x710]
push ecx
lea edx, [esp + 0x7c]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x4f
call fcn.00436a40
add esp, 8
cmp dword [esp + 0x728], ebx
jb 0x41df18
mov eax, dword [esp + 0x714]
push eax
call fcn.0043ca01
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 0x41e19a
mov edi, dword [esp + 0x10]
lea ebx, [ebx]
mov eax, dword [esp + 0x14]
cmp eax, 3
ja case.default.0x41df9d
jmp dword [eax*4 + 0x423350]
push 0x4f78cc
lea ecx, [esp + 0x898]
call fcn.004041e0
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 0x41dfe5
call fcn.0045a4cc
mov eax, dword [esp + 0x84]
lea esi, [esp + 0x894]
call fcn.00436bd0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x173c]
call fcn.00404280
mov byte [esp + 0x1bf0], 0x52
cmp dword [esp + 0x8ac], 0x10
jb 0x41e02b
mov edx, dword [esp + 0x898]
push edx
call fcn.0043ca01
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 0x41e061
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.0045d7db
add esp, 0xc
jmp 0x41e161
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 0x41e0ab
call fcn.0045a4cc
mov esi, dword [esp + 0x84]
cmp dword [esi + 0x34], 0x10
jb 0x41e0b6
mov esi, dword [esi + 0x20]
jmp 0x41e0b9
add esi, 0x20
push esi
call fcn.0045a70f
mov ecx, dword [edi + 0x84]
mov dword [ecx + 0x158], eax
jmp 0x41e15e
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 0x41e0f6
call fcn.0045a4cc
mov esi, dword [esp + 0x84]
cmp dword [esi + 0x50], 0x10
jb 0x41e101
mov esi, dword [esi + 0x3c]
jmp 0x41e104
add esi, 0x3c
push esi
call fcn.0045a70f
mov ecx, dword [edi + 0x84]
mov dword [ecx + 0x17c], eax
jmp 0x41e15e
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 0x41e13e
call fcn.0045a4cc
mov esi, dword [esp + 0x84]
cmp dword [esi + 0x6c], 0x10
jb 0x41e149
mov esi, dword [esi + 0x58]
jmp 0x41e14c
add esi, 0x58
push esi
call fcn.0045a70f
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 0x41df90
cmp dword [esp + 0x1748], 0x10
jb 0x41e19a
mov edx, dword [esp + 0x1734]
push edx
call fcn.0043ca01
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.0042f510
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.004041e0
lea ecx, [esp + 0x18c8]
push ecx
lea ecx, [esp + 0x74c]
mov byte [esp + 0x1bf4], 0x54
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x56
call fcn.00404280
cmp dword [esp + 0xabc], ebx
jb 0x41e2ad
mov ecx, dword [esp + 0xaa8]
push ecx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xabc], esi
mov dword [esp + 0xab8], edi
mov byte [esp + 0xaa8], 0
cmp dword [esp + 0x760], ebx
jb 0x41e2dc
mov edx, dword [esp + 0x74c]
push edx
call fcn.0043ca01
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 0x41e313
mov eax, dword [esp + 0x9b0]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x9c4], esi
mov dword [esp + 0x9c0], edi
mov byte [esp + 0x9b0], 0
cmp dword [esp + 0x1664], edi
je 0x41e54b
push 0x4f76fc
lea ecx, [esp + 0x784]
call fcn.004041e0
lea ecx, [esp + 0x780]
push ecx
lea edx, [esp + 0x94]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x57
call fcn.00436a40
add esp, 8
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x798], ebx
jb 0x41e38f
mov eax, dword [esp + 0x784]
push eax
call fcn.0043ca01
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 0x41e537
mov ebx, dword [esp + 0x10]
nop
mov eax, dword [esp + 0x14]
cmp eax, 3
ja case.default.0x41e3ed
jmp dword [eax*4 + 0x423360]
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x41e417
call fcn.0045a4cc
mov esi, dword [esp + 0x9c]
cmp dword [esi + 0x18], 0x10
jb 0x41e422
mov esi, dword [esi + 4]
jmp 0x41e425
add esi, 4
push esi
call fcn.0045a70f
mov edx, dword [ebx + 0x84]
mov dword [edx + 0x184], eax
jmp 0x41e515
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 0x41e462
call fcn.0045a4cc
mov esi, dword [esp + 0x9c]
cmp dword [esi + 0x34], 0x10
jb 0x41e46d
mov esi, dword [esi + 0x20]
jmp 0x41e470
add esi, 0x20
push esi
call fcn.0045a70f
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0x188], eax
jmp 0x41e515
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 0x41e4ad
call fcn.0045a4cc
mov esi, dword [esp + 0x9c]
cmp dword [esi + 0x50], 0x10
jb 0x41e4b8
mov esi, dword [esi + 0x3c]
jmp 0x41e4bb
add esi, 0x3c
push esi
call fcn.0045a70f
mov ecx, dword [ebx + 0x84]
mov dword [ecx + 0x18c], eax
jmp 0x41e515
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 0x41e4f5
call fcn.0045a4cc
mov esi, dword [esp + 0x9c]
cmp dword [esi + 0x6c], 0x10
jb 0x41e500
mov esi, dword [esi + 0x58]
jmp 0x41e503
add esi, 0x58
push esi
call fcn.0045a70f
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 0x41e3e0
lea esi, [esp + 0x90]
call fcn.0042f510
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.00431930
add esp, 8
lea eax, [esp + 0x1bc0]
push eax
lea ecx, [esp + 0x5e8]
call fcn.004041e0
lea ecx, [esp + 0x18c8]
push ecx
lea ecx, [esp + 0x8d0]
mov byte [esp + 0x1bf4], 0x58
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x5a
call fcn.00404280
cmp dword [esp + 0xaf4], ebx
jb 0x41e6bd
mov ecx, dword [esp + 0xae0]
push ecx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xaf4], esi
mov dword [esp + 0xaf0], edi
mov byte [esp + 0xae0], 0
cmp dword [esp + 0x8e4], ebx
jb 0x41e6ec
mov edx, dword [esp + 0x8d0]
push edx
call fcn.0043ca01
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 0x41e723
mov eax, dword [esp + 0x5e8]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x5fc], esi
mov dword [esp + 0x5f8], edi
mov byte [esp + 0x5e8], 0
cmp dword [esp + 0x1664], edi
je 0x41eb1a
push 0x4f76fc
lea ecx, [esp + 0x7bc]
call fcn.004041e0
lea ecx, [esp + 0x7b8]
push ecx
lea edx, [esp + 0x30]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x5b
call fcn.00436a40
add esp, 8
cmp dword [esp + 0x7d0], ebx
jb 0x41e794
mov eax, dword [esp + 0x7bc]
push eax
call fcn.0043ca01
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 0x41eae3
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x24]
cmp eax, 4
ja case.default.0x41e80d
jmp dword [eax*4 + 0x423370]
push 0x4f78cc
lea ecx, [esp + 0x978]
call fcn.004041e0
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 0x41e84f
call fcn.0045a4cc
mov eax, dword [esp + 0x38]
lea esi, [esp + 0x974]
call fcn.00436bd0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x1694]
call fcn.00404280
mov byte [esp + 0x1bf0], 0x5e
cmp dword [esp + 0x98c], 0x10
jb 0x41e892
mov edx, dword [esp + 0x978]
push edx
call fcn.0043ca01
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 0x41e8c8
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 0x41eaa8
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 0x41e90c
call fcn.0045a4cc
mov esi, dword [esp + 0x38]
cmp dword [esi + 0x34], 0x10
jb 0x41e917
mov esi, dword [esi + 0x20]
jmp 0x41e91a
add esi, 0x20
push esi
call fcn.0045a70f
mov edx, dword [edi + 0x84]
mov ecx, dword [esp + 0x18]
add esp, 4
mov dword [ecx + edx - 0x940], eax
jmp 0x41eab0
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 0x41e95c
call fcn.0045a4cc
mov esi, dword [esp + 0x38]
cmp dword [esi + 0x50], 0x10
jb 0x41e967
mov esi, dword [esi + 0x3c]
jmp 0x41e96a
add esi, 0x3c
push esi
call fcn.0045a70f
mov ecx, dword [edi + 0x84]
mov edx, dword [esp + 0x18]
add esp, 4
mov dword [edx + ecx], eax
jmp 0x41eab0
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 0x41e9a8
call fcn.0045a4cc
mov esi, dword [esp + 0x38]
cmp dword [esi + 0x6c], 0x10
jb 0x41e9b3
mov esi, dword [esi + 0x58]
jmp 0x41e9b6
add esi, 0x58
push esi
call fcn.0045a70f
mov ecx, dword [edi + 0x84]
mov edx, dword [esp + 0x18]
add esp, 4
mov dword [edx + ecx + 0x20], eax
jmp 0x41eab0
push 0x4f78cc
lea ecx, [esp + 0x7f4]
call fcn.004041e0
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 0x41ea10
call fcn.0045a4cc
mov eax, dword [esp + 0x38]
add eax, 0x70
lea esi, [esp + 0x7f0]
call fcn.00436bd0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x1694]
call fcn.00404280
mov byte [esp + 0x1bf0], 0x5e
cmp dword [esp + 0x808], 0x10
jb 0x41ea56
mov ecx, dword [esp + 0x7f4]
push ecx
call fcn.0043ca01
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 0x41ea8c
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.0045d7db
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 0x41e800
cmp dword [esp + 0x16a0], 0x10
jb 0x41eae3
mov eax, dword [esp + 0x168c]
push eax
call fcn.0043ca01
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.0042f510
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 0x41e614
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.00431930
add esp, 8
lea edx, [esp + 0x1bc0]
push edx
lea ecx, [esp + 0x620]
call fcn.004041e0
lea eax, [esp + 0x18c8]
push eax
lea ecx, [esp + 0x604]
mov byte [esp + 0x1bf4], 0x61
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x63
call fcn.00404280
cmp dword [esp + 0xb2c], ebx
jb 0x41ec79
mov eax, dword [esp + 0xb18]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xb2c], esi
mov dword [esp + 0xb28], edi
mov byte [esp + 0xb18], 0
cmp dword [esp + 0x618], ebx
jb 0x41eca8
mov ecx, dword [esp + 0x604]
push ecx
call fcn.0043ca01
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 0x41ecdf
mov edx, dword [esp + 0x620]
push edx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x634], esi
mov dword [esp + 0x630], edi
mov byte [esp + 0x620], 0
cmp dword [esp + 0x1664], edi
je 0x41ef54
push 0x4f76fc
lea ecx, [esp + 0x654]
call fcn.004041e0
lea eax, [esp + 0x650]
push eax
lea ecx, [esp + 0x48]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x64
call fcn.00436a40
add esp, 8
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x668], ebx
jb 0x41ed58
mov edx, dword [esp + 0x654]
push edx
call fcn.0043ca01
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 0x41ef43
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
cmp eax, 4
ja case.default.0x41edb7
jmp dword [eax*4 + 0x423384]
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x41edde
call fcn.0045a4cc
mov esi, dword [esp + 0x50]
cmp dword [esi + 0x18], 0x10
jb 0x41ede9
mov esi, dword [esi + 4]
jmp 0x41edec
add esi, 4
push esi
call fcn.0045a70f
mov ecx, dword [ebx + 0x84]
mov dword [edi + ecx - 0x20], eax
jmp 0x41ef25
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 0x41ee24
call fcn.0045a4cc
mov esi, dword [esp + 0x50]
cmp dword [esi + 0x34], 0x10
jb 0x41ee41
mov esi, dword [esi + 0x20]
push esi
call fcn.0045a70f
mov ecx, dword [ebx + 0x84]
mov dword [edi + ecx], eax
jmp 0x41ef25
add esi, 0x20
push esi
call fcn.0045a70f
mov ecx, dword [ebx + 0x84]
mov dword [edi + ecx], eax
jmp 0x41ef25
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 0x41ee7b
call fcn.0045a4cc
mov esi, dword [esp + 0x50]
cmp dword [esi + 0x50], 0x10
jb 0x41ee86
mov esi, dword [esi + 0x3c]
jmp 0x41ee89
add esi, 0x3c
push esi
call fcn.0045a70f
mov ecx, dword [ebx + 0x84]
mov dword [edi + ecx + 0x20], eax
jmp 0x41ef25
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 0x41eec1
call fcn.0045a4cc
mov esi, dword [esp + 0x50]
cmp dword [esi + 0x6c], 0x10
jb 0x41eecc
mov esi, dword [esi + 0x58]
jmp 0x41eecf
add esi, 0x58
push esi
call fcn.0045a70f
mov ecx, dword [ebx + 0x84]
mov dword [edi + ecx + 0x40], eax
jmp 0x41ef25
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 0x41ef04
call fcn.0045a4cc
mov esi, dword [esp + 0x50]
cmp dword [esi + 0x88], 0x10
jb 0x41ef12
mov esi, dword [esi + 0x74]
jmp 0x41ef15
add esi, 0x74
push esi
call fcn.0045a70f
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 0x41edaa
lea esi, [esp + 0x44]
call fcn.0042f510
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 0x41ebd0
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.004041e0
lea eax, [esp + 0x18b8]
push eax
lea ecx, [esp + 0x688]
mov byte [esp + 0x1bf4], 0x65
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x67
call fcn.00404280
cmp dword [esp + 0xb64], ebx
jb 0x41f063
mov eax, dword [esp + 0xb50]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xb64], esi
mov dword [esp + 0xb60], edi
mov byte [esp + 0xb50], 0
cmp dword [esp + 0x69c], ebx
jb 0x41f092
mov ecx, dword [esp + 0x688]
push ecx
call fcn.0043ca01
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 0x41f0c9
mov edx, dword [esp + 0x6c0]
push edx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x6d4], esi
mov dword [esp + 0x6d0], edi
mov byte [esp + 0x6c0], 0
cmp dword [esp + 0x1664], edi
je 0x41f1e7
push 0x4f78cc
lea ecx, [esp + 0x6f8]
call fcn.004041e0
lea esi, [esp + 0x6f4]
lea eax, [esp + 0x1650]
mov byte [esp + 0x1bf0], 0x68
call fcn.00436bd0
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.00404280
mov ebx, 0x10
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x70c], ebx
jb 0x41f169
mov eax, dword [esp + 0x6f8]
push eax
call fcn.0043ca01
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 0x41f196
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.0045d7db
add esp, 0xc
cmp dword [esp + 0x1780], ebx
jb 0x41f1d1
mov ecx, dword [esp + 0x176c]
push ecx
call fcn.0043ca01
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.004041e0
lea eax, [esp + 0x18b8]
push eax
lea ecx, [esp + 0x730]
mov byte [esp + 0x1bf4], 0x69
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x6b
call fcn.00404280
cmp dword [esp + 0xb9c], ebx
jb 0x41f2cb
mov eax, dword [esp + 0xb88]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xb9c], esi
mov dword [esp + 0xb98], edi
mov byte [esp + 0xb88], 0
cmp dword [esp + 0x744], ebx
jb 0x41f2fa
mov ecx, dword [esp + 0x730]
push ecx
call fcn.0043ca01
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 0x41f331
mov edx, dword [esp + 0x768]
push edx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x77c], esi
mov dword [esp + 0x778], edi
mov byte [esp + 0x768], 0
cmp dword [esp + 0x1664], edi
je 0x41f3ed
push 0x4f78d0
lea ecx, [esp + 0x7a0]
call fcn.004041e0
lea esi, [esp + 0x79c]
lea eax, [esp + 0x1650]
mov byte [esp + 0x1bf0], 0x6c
call fcn.00436bd0
mov esi, 0x10
cmp dword [eax + 0x18], esi
jb 0x41f38f
mov eax, dword [eax + 4]
jmp 0x41f392
add eax, 4
push eax
call fcn.0045a70f
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 0x41f3cc
mov eax, dword [esp + 0x7a0]
push eax
call fcn.0043ca01
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.004041e0
lea edx, [esp + 0x18b8]
push edx
lea ecx, [esp + 0x7d8]
mov byte [esp + 0x1bf4], 0x6d
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x6f
call fcn.00404280
cmp dword [esp + 0xbd4], ebx
jb 0x41f4d1
mov edx, dword [esp + 0xbc0]
push edx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xbd4], esi
mov dword [esp + 0xbd0], edi
mov byte [esp + 0xbc0], 0
cmp dword [esp + 0x7ec], ebx
jb 0x41f500
mov eax, dword [esp + 0x7d8]
push eax
call fcn.0043ca01
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 0x41f537
mov ecx, dword [esp + 0x810]
push ecx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x824], esi
mov dword [esp + 0x820], edi
mov byte [esp + 0x810], 0
cmp dword [esp + 0x1664], edi
je 0x41f5f3
push 0x4f78d0
lea ecx, [esp + 0x844]
call fcn.004041e0
lea esi, [esp + 0x840]
lea eax, [esp + 0x1650]
mov byte [esp + 0x1bf0], 0x70
call fcn.00436bd0
mov esi, 0x10
cmp dword [eax + 0x18], esi
jb 0x41f595
mov eax, dword [eax + 4]
jmp 0x41f598
add eax, 4
push eax
call fcn.0045a70f
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 0x41f5d2
mov edx, dword [esp + 0x844]
push edx
call fcn.0043ca01
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.004041e0
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0x87c]
mov byte [esp + 0x1bf4], 0x71
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x73
call fcn.00404280
cmp dword [esp + 0xc0c], ebx
jb 0x41f6ff
mov ecx, dword [esp + 0xbf8]
push ecx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xc0c], esi
mov dword [esp + 0xc08], edi
mov byte [esp + 0xbf8], 0
cmp dword [esp + 0x890], ebx
jb 0x41f72e
mov edx, dword [esp + 0x87c]
push edx
call fcn.0043ca01
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 0x41f765
mov eax, dword [esp + 0x8b4]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0x8c8], esi
mov dword [esp + 0x8c4], edi
mov byte [esp + 0x8b4], 0
cmp dword [esp + 0x1664], edi
je 0x41f8cb
push 0x4f76fc
lea ecx, [esp + 0x8ec]
call fcn.004041e0
lea ecx, [esp + 0x8e8]
push ecx
lea edx, [esp + 0x82c]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x74
call fcn.00436a40
add esp, 8
mov byte [esp + 0x1bf0], 6
cmp dword [esp + 0x900], ebx
jb 0x41f7e1
mov eax, dword [esp + 0x8ec]
push eax
call fcn.0043ca01
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 0x41f8b7
sub eax, 0
je 0x41f871
sub eax, 1
jne 0x41f8a6
lea edi, [eax + 1]
lea esi, [esp + 0x828]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41f856
mov eax, dword [eax + 4]
jmp 0x41f859
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xbe0], eax
jmp 0x41f8a3
xor edi, edi
lea esi, [esp + 0x828]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41f88a
mov eax, dword [eax + 4]
jmp 0x41f88d
add eax, 4
push eax
call fcn.0045a70f
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 0x41f82e
lea esi, [esp + 0x828]
call fcn.0042f510
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.004041e0
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0x924]
mov byte [esp + 0x1bf4], 0x75
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x77
call fcn.00404280
cmp dword [esp + 0xc44], ebx
jb 0x41fa17
mov ecx, dword [esp + 0xc30]
push ecx
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xc44], esi
mov dword [esp + 0xc40], edi
mov byte [esp + 0xc30], 0
cmp dword [esp + 0x938], ebx
jb 0x41fa46
mov edx, dword [esp + 0x924]
push edx
call fcn.0043ca01
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 0x41fa7d
mov eax, dword [esp + 0x95c]
push eax
call fcn.0043ca01
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 0x41fc9a
push 0x4f76fc
lea ecx, [esp + 0x994]
call fcn.004041e0
lea ecx, [esp + 0x990]
push ecx
lea edx, [esp + 0x5a0]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x78
call fcn.00436a40
add esp, 8
mov byte [esp + 0x1bf0], 0x7a
cmp dword [esp + 0x9a8], ebx
jb 0x41fafd
mov eax, dword [esp + 0x994]
push eax
call fcn.0043ca01
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 0x41fc1e
sub eax, edi
je 0x41fbd1
sub eax, 1
je 0x41fb95
sub eax, 1
jne 0x41fc0d
lea edi, [eax + 2]
lea esi, [esp + 0x59c]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41fb72
mov eax, dword [eax + 4]
jmp 0x41fb75
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
or dword [esp + 0x18], 4
mov dword [edx + 0xbec], eax
jmp 0x41fc08
mov edi, 1
lea esi, [esp + 0x59c]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41fbb1
mov eax, dword [eax + 4]
jmp 0x41fbb4
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
or dword [esp + 0x18], 2
mov dword [edx + 0xbe8], eax
jmp 0x41fc08
xor edi, edi
lea esi, [esp + 0x59c]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41fbea
mov eax, dword [eax + 4]
jmp 0x41fbed
add eax, 4
push eax
call fcn.0045a70f
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 0x41fb42
test byte [esp + 0x14], 7
je 0x41fc7e
push 8
call fcn.0043c9d2
add esp, 4
mov dword [esp + 0x1c], eax
mov byte [esp + 0x1bf0], 0x7b
cmp eax, edi
je 0x41fc72
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.004520bd
jmp 0x41fc74
xor eax, eax
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x170], eax
lea esi, [esp + 0x59c]
mov byte [esp + 0x1bf0], 6
call fcn.0042f510
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.004041e0
lea eax, [esp + 0x18b8]
push eax
lea ecx, [esp + 0x9cc]
mov byte [esp + 0x1bf4], 0x7c
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x7e
call fcn.00404280
cmp dword [esp + 0xb80], ebx
jb 0x41fde6
mov eax, dword [esp + 0xb6c]
push eax
call fcn.0043ca01
add esp, 4
mov dword [esp + 0xb80], esi
mov dword [esp + 0xb7c], edi
mov byte [esp + 0xb6c], 0
cmp dword [esp + 0x9e0], ebx
jb 0x41fe15
mov ecx, dword [esp + 0x9cc]
push ecx
call fcn.0043ca01
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 0x41fe4c
mov edx, dword [esp + 0xa00]
push edx
call fcn.0043ca01
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 0x42006d
push 0x4f76fc
lea ecx, [esp + 0x908]
call fcn.004041e0
lea eax, [esp + 0x904]
push eax
lea ecx, [esp + 0x5d0]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x7f
call fcn.00436a40
add esp, 8
mov byte [esp + 0x1bf0], 0x81
cmp dword [esp + 0x91c], ebx
jb 0x41fecc
mov edx, dword [esp + 0x908]
push edx
call fcn.0043ca01
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 0x41ffed
sub eax, edi
je 0x41ffa0
sub eax, 1
je 0x41ff64
sub eax, 1
jne 0x41ffdc
lea edi, [eax + 2]
lea esi, [esp + 0x5cc]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41ff41
mov eax, dword [eax + 4]
jmp 0x41ff44
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
or dword [esp + 0x18], 4
mov dword [edx + 0xbf8], eax
jmp 0x41ffd7
mov edi, 1
lea esi, [esp + 0x5cc]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41ff80
mov eax, dword [eax + 4]
jmp 0x41ff83
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
or dword [esp + 0x18], 2
mov dword [edx + 0xbf4], eax
jmp 0x41ffd7
xor edi, edi
lea esi, [esp + 0x5cc]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x41ffb9
mov eax, dword [eax + 4]
jmp 0x41ffbc
add eax, 4
push eax
call fcn.0045a70f
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 0x41ff11
test byte [esp + 0x14], 7
je 0x420051
push 8
call fcn.0043c9d2
add esp, 4
mov dword [esp + 0x1c], eax
mov byte [esp + 0x1bf0], 0x82
cmp eax, edi
je 0x420045
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.004520bd
jmp 0x420047
xor eax, eax
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x174], eax
lea esi, [esp + 0x5cc]
mov byte [esp + 0x1bf0], 6
call fcn.0042f510
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.004041e0
lea eax, [esp + 0x18b8]
push eax
lea ecx, [esp + 0x114c]
mov byte [esp + 0x1bf4], 0x83
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x85
call fcn.00404280
cmp dword [esp + 0xa68], ebx
jb 0x420171
mov eax, dword [esp + 0xa54]
push eax
call fcn.0043ca01
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.00404370
push edi
push 1
lea ecx, [esp + 0xe78]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
cmp dword [esp + 0x1664], edi
je 0x420229
push 0x4f78d0
lea ecx, [esp + 0x12d4]
call fcn.004041e0
lea esi, [esp + 0x12d0]
lea eax, [esp + 0x1650]
mov byte [esp + 0x1bf0], 0x86
call fcn.00436bd0
cmp dword [eax + 0x18], 0x10
jb 0x4201f1
mov eax, dword [eax + 4]
jmp 0x4201f4
add eax, 4
push eax
call fcn.0045a70f
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.00404370
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.004041e0
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0xeac]
mov byte [esp + 0x1bf4], 0x87
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x89
call fcn.00404280
push edi
push 1
lea ecx, [esp + 0x15e8]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0xeb0]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0x1188]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
cmp dword [esp + 0x1664], edi
je 0x4203c5
push 0x4f78d0
lea ecx, [esp + 0xc98]
call fcn.004041e0
lea esi, [esp + 0xc94]
lea eax, [esp + 0x1650]
mov byte [esp + 0x1bf0], 0x8a
call fcn.00436bd0
cmp dword [eax + 0x18], 0x10
jb 0x42038d
mov eax, dword [eax + 4]
jmp 0x420390
add eax, 4
push eax
call fcn.0045a70f
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.00404370
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.004041e0
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0xcb4]
mov byte [esp + 0x1bf4], 0x8b
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x8d
call fcn.00404280
push edi
push 1
lea ecx, [esp + 0x1508]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0xcb8]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0xee8]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
cmp dword [esp + 0x1664], edi
je 0x420720
push 0x4f76fc
lea ecx, [esp + 0x13ec]
call fcn.004041e0
lea ecx, [esp + 0x13e8]
push ecx
lea edx, [esp + 0x528]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x8e
call fcn.00436a40
add esp, 8
push 0
push 1
lea ecx, [esp + 0x13f0]
call fcn.00404370
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 0x4206f7
sub eax, 0
je 0x420656
sub eax, 1
je 0x420619
sub eax, 1
jne 0x4206e6
lea edi, [eax + 2]
lea esi, [esp + 0x524]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x4205f8
mov eax, dword [eax + 4]
jmp 0x4205fb
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xc28], eax
jmp 0x4206e6
mov edi, 1
lea esi, [esp + 0x524]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x420635
mov eax, dword [eax + 4]
jmp 0x420638
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xc24], eax
jmp 0x4206e6
push 0x4f78cc
lea ecx, [esp + 0xf1c]
call fcn.004041e0
xor edi, edi
lea esi, [esp + 0x524]
mov byte [esp + 0x1bf0], 0x92
call fcn.0042f560
lea esi, [esp + 0xf18]
call fcn.00436bd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x1854]
call fcn.00404280
push edi
push 1
mov ecx, esi
mov byte [esp + 0x1bf8], 0x91
call fcn.00404370
cmp dword [esp + 0x1860], 0x10
mov eax, dword [esp + 0x184c]
jae 0x4206c3
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.0045d7db
add esp, 0xc
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x4205c7
push 0
push 1
lea ecx, [esp + 0x1850]
call fcn.00404370
lea esi, [esp + 0x524]
mov byte [esp + 0x1bf0], 6
call fcn.0042f510
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.004041e0
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0x11bc]
mov byte [esp + 0x1bf4], 0x93
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x95
call fcn.00404280
push edi
push 1
lea ecx, [esp + 0x15b0]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0x11c0]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0xf58]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
cmp dword [esp + 0x1664], edi
je 0x420a73
push 0x4f76fc
lea ecx, [esp + 0x130c]
call fcn.004041e0
lea ecx, [esp + 0x1308]
push ecx
lea edx, [esp + 0x588]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x96
call fcn.00436a40
add esp, 8
push 0
push 1
lea ecx, [esp + 0x1310]
call fcn.00404370
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 0x420a4a
sub eax, 0
je 0x4209a9
sub eax, 1
je 0x42096c
sub eax, 1
jne 0x420a39
lea edi, [eax + 2]
lea esi, [esp + 0x584]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x42094b
mov eax, dword [eax + 4]
jmp 0x42094e
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xc50], eax
jmp 0x420a39
mov edi, 1
lea esi, [esp + 0x584]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x420988
mov eax, dword [eax + 4]
jmp 0x42098b
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xc4c], eax
jmp 0x420a39
push 0x4f78cc
lea ecx, [esp + 0xf8c]
call fcn.004041e0
xor edi, edi
lea esi, [esp + 0x584]
mov byte [esp + 0x1bf0], 0x9a
call fcn.0042f560
lea esi, [esp + 0xf88]
call fcn.00436bd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x181c]
call fcn.00404280
push edi
push 1
mov ecx, esi
mov byte [esp + 0x1bf8], 0x99
call fcn.00404370
cmp dword [esp + 0x1828], 0x10
mov eax, dword [esp + 0x1814]
jae 0x420a16
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.0045d7db
add esp, 0xc
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x42091a
push 0
push 1
lea ecx, [esp + 0x1818]
call fcn.00404370
lea esi, [esp + 0x584]
mov byte [esp + 0x1bf0], 6
call fcn.0042f510
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.004041e0
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0x11f4]
mov byte [esp + 0x1bf4], 0x9b
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0x9d
call fcn.00404280
push edi
push 1
lea ecx, [esp + 0x1540]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0x11f8]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0xfc8]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
cmp dword [esp + 0x1664], edi
je 0x420dd6
push 0x4f76fc
lea ecx, [esp + 0x13b4]
call fcn.004041e0
lea ecx, [esp + 0x13b0]
push ecx
lea edx, [esp + 0x558]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0x9e
call fcn.00436a40
add esp, 8
push 0
push 1
lea ecx, [esp + 0x13b8]
call fcn.00404370
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 0x420dad
sub eax, 0
je 0x420d0c
sub eax, 1
je 0x420ccf
sub eax, 1
jne 0x420d9c
lea edi, [eax + 2]
lea esi, [esp + 0x554]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x420cae
mov eax, dword [eax + 4]
jmp 0x420cb1
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xc78], eax
jmp 0x420d9c
mov edi, 1
lea esi, [esp + 0x554]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x420ceb
mov eax, dword [eax + 4]
jmp 0x420cee
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xc74], eax
jmp 0x420d9c
push 0x4f78cc
lea ecx, [esp + 0xffc]
call fcn.004041e0
xor edi, edi
lea esi, [esp + 0x554]
mov byte [esp + 0x1bf0], 0xa2
call fcn.0042f560
lea esi, [esp + 0xff8]
call fcn.00436bd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x1870]
call fcn.00404280
push edi
push 1
mov ecx, esi
mov byte [esp + 0x1bf8], 0xa1
call fcn.00404370
cmp dword [esp + 0x187c], 0x10
mov eax, dword [esp + 0x1868]
jae 0x420d79
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.0045d7db
add esp, 0xc
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x420c7d
push 0
push 1
lea ecx, [esp + 0x186c]
call fcn.00404370
lea esi, [esp + 0x554]
mov byte [esp + 0x1bf0], 6
call fcn.0042f510
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.004041e0
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0x122c]
mov byte [esp + 0x1bf4], 0xa3
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xa5
call fcn.00404280
push edi
push 1
lea ecx, [esp + 0x1620]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0x1230]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0x1038]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
cmp dword [esp + 0x1664], edi
je 0x421141
push 0x4f76fc
lea ecx, [esp + 0x1344]
call fcn.004041e0
lea ecx, [esp + 0x1340]
push ecx
lea edx, [esp + 0x4f8]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xa6
call fcn.00436a40
add esp, 8
push 0
push 1
lea ecx, [esp + 0x1348]
call fcn.00404370
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 0x421118
sub eax, 0
je 0x421077
sub eax, 1
je 0x42103a
sub eax, 1
jne 0x421107
lea edi, [eax + 2]
lea esi, [esp + 0x4f4]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x421019
mov eax, dword [eax + 4]
jmp 0x42101c
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xca0], eax
jmp 0x421107
mov edi, 1
lea esi, [esp + 0x4f4]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x421056
mov eax, dword [eax + 4]
jmp 0x421059
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
add esp, 4
mov dword [edx + 0xc9c], eax
jmp 0x421107
push 0x4f78cc
lea ecx, [esp + 0x106c]
call fcn.004041e0
xor edi, edi
lea esi, [esp + 0x4f4]
mov byte [esp + 0x1bf0], 0xaa
call fcn.0042f560
lea esi, [esp + 0x1068]
call fcn.00436bd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x17ac]
call fcn.00404280
push edi
push 1
mov ecx, esi
mov byte [esp + 0x1bf8], 0xa9
call fcn.00404370
cmp dword [esp + 0x17b8], 0x10
mov eax, dword [esp + 0x17a4]
jae 0x4210e4
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.0045d7db
add esp, 0xc
mov eax, dword [esp + 0x18]
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x420fe8
push 0
push 1
lea ecx, [esp + 0x17a8]
call fcn.00404370
lea esi, [esp + 0x4f4]
mov byte [esp + 0x1bf0], 6
call fcn.0042f510
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.004041e0
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0x1264]
mov byte [esp + 0x1bf4], 0xab
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xad
call fcn.00404280
push edi
push 1
lea ecx, [esp + 0x147c]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0x1268]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0x10a8]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
cmp dword [esp + 0x1664], edi
je 0x4214aa
push 0x4f76fc
lea ecx, [esp + 0xd24]
call fcn.004041e0
lea ecx, [esp + 0xd20]
push ecx
lea edx, [esp + 0x468]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xae
call fcn.00436a40
add esp, 8
push edi
push 1
lea ecx, [esp + 0xd28]
call fcn.00404370
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 0x421484
jmp 0x421320
cmp dword [esp + 0x14], 3
ja case.default.0x42132f
mov eax, dword [esp + 0x14]
jmp dword [eax*4 + 0x423398]
push 0x4f78cc
lea ecx, [esp + 0xd40]
call fcn.004041e0
xor edi, edi
lea esi, [esp + 0x464]
mov byte [esp + 0x1bf0], 0xb2
call fcn.0042f560
lea esi, [esp + 0xd3c]
call fcn.00436bd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x17c8]
call fcn.00404280
push edi
push 1
mov ecx, esi
mov byte [esp + 0x1bf8], 0xb1
call fcn.00404370
cmp dword [esp + 0x17d4], 0x10
mov eax, dword [esp + 0x17c0]
jae 0x4213a3
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.0045d7db
add esp, 0xc
jmp case.default.0x42132f
mov edi, 1
lea esi, [esp + 0x464]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x4213e6
mov eax, dword [eax + 4]
jmp 0x4213e9
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xca4], eax
jmp 0x421470
mov edi, 2
lea esi, [esp + 0x464]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x421420
mov eax, dword [eax + 4]
jmp 0x421423
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xcc8], eax
jmp 0x421470
mov edi, 3
lea esi, [esp + 0x464]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x421457
mov eax, dword [eax + 4]
jmp 0x42145a
add eax, 4
push eax
call fcn.0045a70f
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 0x421320
push 0
push 1
lea ecx, [esp + 0x17c4]
call fcn.00404370
lea esi, [esp + 0x464]
mov byte [esp + 0x1bf0], 6
call fcn.0042f510
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.004041e0
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0xd78]
mov byte [esp + 0x1bf4], 0xb3
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xb5
call fcn.00404280
push edi
push 1
lea ecx, [esp + 0x14b4]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0xd7c]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0xdb4]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
cmp dword [esp + 0x1664], edi
je 0x4217a0
push 0x4f76fc
lea ecx, [esp + 0xcd0]
call fcn.004041e0
lea ecx, [esp + 0xccc]
push ecx
lea edx, [esp + 0x510]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xb6
call fcn.00436a40
add esp, 8
push 0
push 1
lea ecx, [esp + 0xcd4]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
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 0x421792
sub eax, 0
je 0x42174c
sub eax, 1
je 0x421715
sub eax, 1
jne 0x421781
lea edi, [eax + 2]
lea esi, [esp + 0x50c]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x4216f7
mov eax, dword [eax + 4]
jmp 0x4216fa
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xcd8], eax
jmp 0x42177e
mov edi, 1
lea esi, [esp + 0x50c]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x421731
mov eax, dword [eax + 4]
jmp 0x421734
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xcd4], eax
jmp 0x42177e
xor edi, edi
lea esi, [esp + 0x50c]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x421765
mov eax, dword [eax + 4]
jmp 0x421768
add eax, 4
push eax
call fcn.0045a70f
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 0x4216c6
lea esi, [esp + 0x50c]
call fcn.0042f510
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.004041e0
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0xcec]
mov byte [esp + 0x1bf4], 0xb7
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xb9
call fcn.00404280
push edi
push 1
lea ecx, [esp + 0x14ec]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0xcf0]
call fcn.00404370
push edi
push 1
lea ecx, [esp + 0xdec]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
cmp dword [esp + 0x1664], edi
je 0x421acc
push 0x4f76fc
lea ecx, [esp + 0xe20]
call fcn.004041e0
lea ecx, [esp + 0xe1c]
push ecx
lea edx, [esp + 0x540]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xba
call fcn.00436a40
add esp, 8
push 0
push 1
lea ecx, [esp + 0xe24]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
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 0x421ac0
sub eax, 0
je 0x421a7a
sub eax, 1
je 0x421a43
sub eax, 1
jne 0x421aaf
lea edi, [eax + 2]
lea esi, [esp + 0x53c]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x421a25
mov edi, 1
lea esi, [esp + 0x53c]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x421a5f
mov eax, dword [eax + 4]
jmp 0x421a62
add eax, 4
push eax
call fcn.0045a70f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
mov dword [edx + 0xce0], eax
jmp 0x421aac
xor edi, edi
lea esi, [esp + 0x53c]
call fcn.0042f560
cmp dword [eax + 0x18], 0x10
jb 0x421a93
mov eax, dword [eax + 4]
jmp 0x421a96
add eax, 4
push eax
call fcn.0045a70f
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 0x4219f4
lea esi, [esp + 0x53c]
call fcn.0042f510
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.004041e0
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0xe58]
mov byte [esp + 0x1bf4], 0xbb
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
xor ebx, ebx
push ebx
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xbd
call fcn.00404280
push ebx
push 1
lea ecx, [esp + 0x1524]
call fcn.00404370
push ebx
push 1
lea ecx, [esp + 0xe5c]
call fcn.00404370
push ebx
push 1
lea ecx, [esp + 0xe94]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
cmp dword [esp + 0x1664], ebx
je 0x421e90
push 0x4f76fc
lea ecx, [esp + 0xd08]
call fcn.004041e0
lea ecx, [esp + 0xd04]
push ecx
lea edx, [esp + 0x4b0]
push edx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xbe
call fcn.00436a40
add esp, 8
push ebx
push 1
lea ecx, [esp + 0xd0c]
mov byte [esp + 0x1bf8], 0xc0
call fcn.00404370
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 0x421e11
cmp dword [esp + 0x14], 3
ja case.default.0x421d02
mov eax, dword [esp + 0x14]
jmp dword [eax*4 + 0x4233a8]
mov eax, dword [esp + 0x14]
inc eax
cmp eax, dword [esp + 0x1c]
mov dword [esp + 0x14], eax
jl 0x421cf3
test bl, 0xf
je 0x421e7c
push 8
call fcn.0043c9d2
add esp, 4
mov dword [esp + 0x1c], eax
mov byte [esp + 0x1bf0], 0xc1
test eax, eax
je 0x421e70
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.00452074
jmp 0x421e72
xor eax, eax
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x16c], eax
lea esi, [esp + 0x4ac]
mov byte [esp + 0x1bf0], 6
call fcn.0042f510
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.004041e0
lea eax, [esp + 0x18b8]
push eax
lea ecx, [esp + 0xf00]
mov byte [esp + 0x1bf4], 0xc2
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xc4
call fcn.00404280
push 0
push 1
lea ecx, [esp + 0x155c]
call fcn.00404370
push 0
push 1
lea ecx, [esp + 0xf04]
call fcn.00404370
push 0
push 1
lea ecx, [esp + 0xf3c]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
cmp dword [esp + 0x1664], 0
je 0x42215d
push 0x4f76fc
lea ecx, [esp + 0xf70]
call fcn.004041e0
lea eax, [esp + 0xf6c]
push eax
lea ecx, [esp + 0x670]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xc5
call fcn.00436a40
add esp, 8
push 0
push 1
lea ecx, [esp + 0xf74]
call fcn.00404370
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 0x422139
sub eax, 0
je 0x422098
sub eax, 1
jne 0x422128
push 0x4f78cc
lea ecx, [esp + 0xfa8]
call fcn.004041e0
xor edi, edi
lea esi, [esp + 0x66c]
mov byte [esp + 0x1bf0], 0xc9
call fcn.0042f560
lea esi, [esp + 0xfa4]
call fcn.00436bd0
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x1800]
call fcn.00404280
push edi
push 1
mov ecx, esi
mov byte [esp + 0x1bf8], 0xc8
call fcn.00404370
cmp dword [esp + 0x180c], 0x10
mov eax, dword [esp + 0x17f8]
jae 0x422105
push 0
push 1
lea ecx, [esp + 0x17fc]
call fcn.00404370
lea esi, [esp + 0x66c]
mov byte [esp + 0x1bf0], 6
call fcn.0042f510
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.004041e0
lea eax, [esp + 0x18b8]
push eax
lea ecx, [esp + 0xfe0]
mov byte [esp + 0x1bf4], 0xca
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xcc
call fcn.00404280
push 0
push 1
lea ecx, [esp + 0x1594]
call fcn.00404370
push 0
push 1
lea ecx, [esp + 0xfe4]
call fcn.00404370
push 0
push 1
lea ecx, [esp + 0x101c]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
cmp dword [esp + 0x1664], 0
je 0x42242e
push 0x4f76fc
lea ecx, [esp + 0x1050]
call fcn.004041e0
lea eax, [esp + 0x104c]
push eax
lea ecx, [esp + 0x570]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xcd
call fcn.00436a40
add esp, 8
push 0
push 1
lea ecx, [esp + 0x1054]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
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 0x422422
sub eax, 0
je 0x4223dc
lea esi, [esp + 0x56c]
call fcn.0042f510
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.004041e0
lea eax, [esp + 0x18b8]
push eax
lea ecx, [esp + 0x1088]
mov byte [esp + 0x1bf4], 0xce
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
xor esi, esi
push esi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xd0
call fcn.00404280
push esi
push 1
lea ecx, [esp + 0x15cc]
call fcn.00404370
push esi
push 1
lea ecx, [esp + 0x108c]
call fcn.00404370
push esi
push 1
lea ecx, [esp + 0x10c4]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
cmp dword [esp + 0x1664], esi
je 0x4227a4
push 0x4f76fc
lea ecx, [esp + 0x10f8]
call fcn.004041e0
lea eax, [esp + 0x10f4]
push eax
lea ecx, [esp + 0x4c8]
push ecx
lea ecx, [esp + 0x1658]
mov byte [esp + 0x1bf8], 0xd1
call fcn.00436a40
add esp, 8
push esi
push 1
lea ecx, [esp + 0x10fc]
call fcn.00404370
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 0x422780
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.004041e0
lea ecx, [esp + 0x18b8]
push ecx
lea ecx, [esp + 0x1168]
mov byte [esp + 0x1bf4], 0xd6
call fcn.004041e0
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.00423cd0
push 0xffffffffffffffff
xor esi, esi
push esi
push eax
lea ecx, [esp + 0x165c]
mov byte [esp + 0x1bfc], 0xd8
call fcn.00404280
push esi
push 1
lea ecx, [esp + 0x1604]
call fcn.00404370
push esi
push 1
lea ecx, [esp + 0x116c]
call fcn.00404370
push esi
push 1
lea ecx, [esp + 0x11a4]
mov byte [esp + 0x1bf8], 6
call fcn.00404370
cmp dword [esp + 0x1664], esi
je 0x422b21
mov ecx, dword [esp + 0x14]
mov dword [ecx], 7
lea ecx, [esp + 0x28]
call fcn.00406c70
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.0045a0a2
mov esp, ebp
pop ebp
ret 4