Function at 0x415f60
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x8cc
mov eax, dword [0x4544f0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1b0], 0
lea eax, [ebp - 0x1a0]
mov dword [ebp - 0x1a8], eax
lea ecx, [ebp - 0x7f0]
mov dword [ebp - 0x80c], ecx
mov dword [ebp - 8], 0xc8
cmp dword [0x458ac0], 0
je 0x415fc4
push str.Starting_parse_n
mov edx, dword [0x453ed0]
push edx
call fcn.004220d0
add esp, 8
xor eax, eax
jne 0x415fa7
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x7fc], 0
mov dword [0x458abc], 0
mov dword [0x458b40], 0xfffffffe
mov ecx, dword [ebp - 0x1a8]
mov dword [ebp - 0x7f4], ecx
mov edx, dword [ebp - 0x80c]
mov dword [ebp - 4], edx
jmp 0x416013
mov eax, dword [ebp - 0x7f4]
add eax, 2
mov dword [ebp - 0x7f4], eax
mov ecx, dword [ebp - 0x7f4]
mov dx, word [ebp - 0xc]
mov word [ecx], dx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x1a8]
lea edx, [ecx + eax*2 - 2]
cmp edx, dword [ebp - 0x7f4]
ja 0x416249
mov eax, dword [ebp - 0x7f4]
sub eax, dword [ebp - 0x1a8]
sar eax, 1
add eax, 1
mov dword [ebp - 0x810], eax
cmp dword [ebp - 8], 0x2710
jb 0x41605e
jmp 0x419bc9
mov ecx, dword [ebp - 8]
shl ecx, 1
mov dword [ebp - 8], ecx
cmp dword [ebp - 8], 0x2710
jbe 0x416076
mov dword [ebp - 8], 0x2710
mov edx, dword [ebp - 0x1a8]
mov dword [ebp - 0x818], edx
mov eax, dword [ebp - 8]
imul eax, eax, 0xa
add eax, 7
push eax
call dword [sym.imp.MSVCR90.dll_malloc]
add esp, 4
mov dword [ebp - 0x814], eax
cmp dword [ebp - 0x814], 0
jne 0x4160a9
jmp 0x419bc9
mov dword [ebp - 0x820], 0
jmp 0x4160c4
mov ecx, dword [ebp - 0x820]
add ecx, 1
mov dword [ebp - 0x820], ecx
mov edx, dword [ebp - 0x820]
cmp edx, dword [ebp - 0x810]
jae 0x4160f4
mov eax, dword [ebp - 0x820]
mov ecx, dword [ebp - 0x814]
mov edx, dword [ebp - 0x820]
mov esi, dword [ebp - 0x1a8]
mov dx, word [esi + edx*2]
mov word [ecx + eax*2], dx
jmp 0x4160b5
xor eax, eax
jne 0x4160a9
mov ecx, dword [ebp - 0x814]
mov dword [ebp - 0x1a8], ecx
mov edx, dword [ebp - 8]
lea eax, [edx + edx + 7]
mov dword [ebp - 0x81c], eax
mov ecx, dword [ebp - 0x81c]
shr ecx, 3
mov edx, dword [ebp - 0x814]
lea eax, [edx + ecx*8]
mov dword [ebp - 0x814], eax
xor ecx, ecx
jne 0x4160a9
mov dword [ebp - 0x828], 0
jmp 0x41614c
mov edx, dword [ebp - 0x828]
add edx, 1
mov dword [ebp - 0x828], edx
mov eax, dword [ebp - 0x828]
cmp eax, dword [ebp - 0x810]
jae 0x416182
mov ecx, dword [ebp - 0x828]
mov edx, dword [ebp - 0x80c]
mov eax, dword [edx + ecx*8]
mov ecx, dword [edx + ecx*8 + 4]
mov edx, dword [ebp - 0x828]
mov esi, dword [ebp - 0x814]
mov dword [esi + edx*8], eax
mov dword [esi + edx*8 + 4], ecx
jmp 0x41613d
xor eax, eax
jne 0x416131
mov ecx, dword [ebp - 0x814]
mov dword [ebp - 0x80c], ecx
mov edx, dword [ebp - 8]
lea eax, [edx*8 + 7]
mov dword [ebp - 0x824], eax
mov ecx, dword [ebp - 0x824]
shr ecx, 3
mov edx, dword [ebp - 0x814]
lea eax, [edx + ecx*8]
mov dword [ebp - 0x814], eax
xor ecx, ecx
jne 0x416131
mov edx, dword [ebp - 0x818]
lea eax, [ebp - 0x1a0]
cmp edx, eax
je 0x4161e2
mov ecx, dword [ebp - 0x818]
push ecx
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
mov edx, dword [ebp - 0x810]
mov eax, dword [ebp - 0x1a8]
lea ecx, [eax + edx*2 - 2]
mov dword [ebp - 0x7f4], ecx
mov edx, dword [ebp - 0x810]
mov eax, dword [ebp - 0x80c]
lea ecx, [eax + edx*8 - 8]
mov dword [ebp - 4], ecx
cmp dword [0x458ac0], 0
je 0x41622b
mov edx, dword [ebp - 8]
push edx
push str.Stack_size_increased_to__lu_n
mov eax, dword [0x453ed0]
push eax
call fcn.004220d0
add esp, 0xc
xor ecx, ecx
jne 0x41620b
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0x1a8]
lea ecx, [eax + edx*2 - 2]
cmp ecx, dword [ebp - 0x7f4]
ja 0x416249
jmp 0x419bbd
cmp dword [0x458ac0], 0
je 0x416269
mov edx, dword [ebp - 0xc]
push edx
push str.Entering_state__d_n
mov eax, dword [0x453ed0]
push eax
call fcn.004220d0
add esp, 0xc
xor ecx, ecx
jne 0x416249
cmp dword [ebp - 0xc], 3
jne 0x416278
jmp 0x419bb1
mov edx, dword [ebp - 0xc]
movsx eax, word [edx*2 + 0x439fc0]
mov dword [ebp - 0x1a4], eax
cmp dword [ebp - 0x1a4], 0xffffff70
jne 0x41629a
jmp 0x4164c0
cmp dword [0x458b40], 0xfffffffe
jne 0x4162d7
cmp dword [0x458ac0], 0
je 0x4162c0
push str.Reading_a_token:
mov ecx, dword [0x453ed0]
push ecx
call fcn.004220d0
add esp, 8
xor edx, edx
jne 0x4162a3
mov eax, dword [0x458b20]
push eax
call fcn.0041dd50
add esp, 4
mov dword [0x458b40], eax
cmp dword [0x458b40], 0
jg 0x41631c
mov dword [ebp - 0x1b0], 0
mov ecx, dword [ebp - 0x1b0]
mov dword [0x458b40], ecx
cmp dword [0x458ac0], 0
je 0x416313
push str.Now_at_end_of_input._n
mov edx, dword [0x453ed0]
push edx
call fcn.004220d0
add esp, 8
xor eax, eax
jne 0x4162f6
jmp 0x4163a7
cmp dword [0x458b40], 0x150
ja 0x41633d
mov ecx, dword [0x458b40]
movzx edx, byte [ecx + 0x439380]
mov dword [ebp - 0x878], edx
jmp 0x416347
mov dword [ebp - 0x878], 2
mov eax, dword [ebp - 0x878]
mov dword [ebp - 0x1b0], eax
cmp dword [0x458ac0], 0
je 0x4163a3
push str.Next_token_is
push 0x452460
mov ecx, dword [0x453ed0]
push ecx
call fcn.004220d0
add esp, 0xc
push 0x458b48
mov edx, dword [ebp - 0x1b0]
push edx
mov eax, dword [0x453ed0]
push eax
call fcn.0041b460
add esp, 0xc
push 0x452464
mov ecx, dword [0x453ed0]
push ecx
call fcn.004220d0
add esp, 8
xor edx, edx
jne 0x416353
mov eax, dword [ebp - 0x1a4]
add eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x1a4], eax
js 0x4163dd
cmp dword [ebp - 0x1a4], 0x458
jg 0x4163dd
mov ecx, dword [ebp - 0x1a4]
movsx edx, word [ecx*2 + 0x43ab10]
cmp edx, dword [ebp - 0x1b0]
je 0x4163e2
jmp 0x4164c0
mov eax, dword [ebp - 0x1a4]
movsx ecx, word [eax*2 + 0x43a258]
mov dword [ebp - 0x1a4], ecx
cmp dword [ebp - 0x1a4], 0
jg 0x416420
cmp dword [ebp - 0x1a4], 0xffffff81
jne 0x41640d
jmp 0x419913
mov edx, dword [ebp - 0x1a4]
neg edx
mov dword [ebp - 0x1a4], edx
jmp 0x4164de
cmp dword [ebp - 0x7fc], 0
je 0x416438
mov eax, dword [ebp - 0x7fc]
sub eax, 1
mov dword [ebp - 0x7fc], eax
cmp dword [0x458ac0], 0
je 0x416488
push 0x452468
push 0x452474
mov ecx, dword [0x453ed0]
push ecx
call fcn.004220d0
add esp, 0xc
push 0x458b48
mov edx, dword [ebp - 0x1b0]
push edx
mov eax, dword [0x453ed0]
push eax
call fcn.0041b460
add esp, 0xc
push 0x452478
mov ecx, dword [0x453ed0]
push ecx
call fcn.004220d0
add esp, 8
xor edx, edx
jne 0x416438
mov dword [0x458b40], 0xfffffffe
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 4]
add ecx, 8
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
mov eax, dword [0x458b48]
mov dword [edx], eax
mov ecx, dword [0x458b4c]
mov dword [edx + 4], ecx
jmp 0x416004
mov edx, dword [ebp - 0xc]
movzx eax, byte [edx + 0x439e48]
mov dword [ebp - 0x1a4], eax
cmp dword [ebp - 0x1a4], 0
jne 0x4164de
jmp 0x419913
mov ecx, dword [ebp - 0x1a4]
movzx edx, byte [ecx + 0x439db8]
mov dword [ebp - 0x1ac], edx
mov eax, 1
sub eax, dword [ebp - 0x1ac]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx + eax*8]
mov eax, dword [ecx + eax*8 + 4]
mov dword [ebp - 0x808], edx
mov dword [ebp - 0x804], eax
cmp dword [0x458ac0], 0
je 0x41652e
mov ecx, dword [ebp - 0x1a4]
push ecx
mov edx, dword [ebp - 4]
push edx
call fcn.0041b560
add esp, 8
xor eax, eax
jne 0x416512
mov ecx, dword [ebp - 0x1a4]
mov dword [ebp - 0x87c], ecx
mov edx, dword [ebp - 0x87c]
sub edx, 2
mov dword [ebp - 0x87c], edx
cmp dword [ebp - 0x87c], 0x8c
ja case.0x416563.1
mov eax, dword [ebp - 0x87c]
jmp dword [eax*4 + 0x419d04]
mov ecx, dword [ebp - 4]
cmp dword [ecx - 8], 0
je 0x41665e
mov edx, dword [0x458b20]
mov eax, dword [edx + 0x64]
mov ecx, dword [eax + 4]
and ecx, 0x100
jne 0x41665e
mov edx, dword [0x458b20]
cmp dword [edx + 0x9c], 0
je 0x4165c9
mov eax, dword [0x458b20]
mov ecx, dword [eax + 0x64]
mov edx, dword [ecx + 4]
and edx, 0x40
jne 0x4165c9
mov eax, dword [0x458b20]
mov ecx, dword [eax + 0x9c]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00414ec0
add esp, 8
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
movsx edx, word [ecx + 2]
cmp edx, 0x138
jne 0x416619
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
mov dword [ebp - 0x82c], ecx
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x82c]
mov ecx, dword [eax + 0x20]
mov dword [edx - 8], ecx
mov edx, dword [ebp - 0x82c]
mov dword [edx + 0x20], 0
mov eax, dword [ebp - 0x82c]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00414ec0
add esp, 8
mov edx, dword [0x458b20]
mov dword [edx + 0x88], 0x125
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
push ecx
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
movsx ecx, word [eax]
push ecx
push 1
push 0x125
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov ecx, dword [0x458b20]
mov dword [ecx + 0x9c], eax
jmp case.0x416563.1
cmp dword [0x458b24], 0
je 0x416679
push str.no_nested_function_definitions
call fcn.0041b6a0
add esp, 4
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
mov dword [eax + 8], 0x125
push 0
push 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
mov eax, dword [edx + 0x10]
push eax
push 1
push 0x125
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov edx, dword [ebp - 4]
mov ecx, dword [edx - 8]
mov dword [ecx + 0x1c], eax
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
mov ecx, dword [eax + 0x1c]
mov dword [0x458b24], ecx
mov edx, 0x103
mov eax, dword [0x458b24]
mov word [eax], dx
push 0x24
push 1
call dword [sym.imp.MSVCR90.dll_calloc]
add esp, 8
mov dword [ebp - 0x830], eax
cmp dword [ebp - 0x830], 0
jne 0x4166f0
call fcn.0041dd30
mov ecx, dword [ebp - 0x830]
mov dword [ecx], 0x34
cmp dword [0x458b2c], 0
je 0x4167ab
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
movsx ecx, byte [eax + 0x34]
movsx edx, byte [0x45249c]
cmp ecx, edx
jne 0x416739
push 0x4524a4
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
add ecx, 0x34
push ecx
call sub.MSVCR90.dll_strcmp
add esp, 8
test eax, eax
je 0x4167ab
mov edx, dword [sym.imp.cdt.dll_Dtset]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x830]
push ecx
call sub.cdt.dll_dtopen
add esp, 8
mov edx, dword [0x458b24]
mov dword [edx + 0x28], eax
mov eax, dword [0x458b24]
cmp dword [eax + 0x28], 0
je 0x416784
mov ecx, dword [0x458b20]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [0x458b24]
mov ecx, dword [eax + 0x28]
push ecx
call sub.cdt.dll_dtview
add esp, 8
test eax, eax
jne 0x416789
call fcn.0041dd30
mov edx, dword [0x458b20]
mov eax, dword [0x458b24]
mov ecx, dword [eax + 0x28]
mov dword [edx + 0x3c], ecx
mov edx, dword [0x458b20]
mov eax, dword [0x458b20]
mov ecx, dword [eax + 0x3c]
mov dword [edx + 4], ecx
jmp case.0x416563.1
mov dword [0x458b24], 0
mov edx, dword [0x458b20]
cmp dword [edx + 0x3c], 0
je 0x4167fa
mov eax, dword [0x458b20]
mov ecx, dword [eax + 0x3c]
mov edx, dword [0x458b20]
mov eax, dword [ecx + 0x1c]
mov dword [edx + 4], eax
push 0
mov ecx, dword [0x458b20]
mov edx, dword [ecx + 0x3c]
push edx
call sub.cdt.dll_dtview
add esp, 8
mov eax, dword [0x458b20]
mov dword [eax + 0x3c], 0
mov ecx, dword [ebp - 4]
cmp dword [ecx], 0
je 0x41684e
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax + 2]
cmp ecx, 0x138
jne 0x41684e
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov dword [ebp - 0x834], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x834]
mov eax, dword [edx + 0x20]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x834]
mov dword [ecx + 0x20], 0
mov edx, dword [ebp - 0x834]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00414ec0
add esp, 8
push 0
push 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
mov eax, dword [edx + 0x10]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00415360
add esp, 0x14
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
mov ecx, dword [edx + 0x1c]
mov dword [ecx + 0x24], eax
jmp case.0x416563.1
mov dword [ebp - 0x808], 0
jmp case.0x416563.1
mov edx, dword [ebp - 4]
cmp dword [edx - 8], 0
jne 0x4168a6
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov dword [ebp - 0x808], ecx
jmp 0x416920
mov edx, dword [ebp - 4]
cmp dword [edx], 0
jne 0x4168bc
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
mov dword [ebp - 0x808], ecx
jmp 0x416920
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
movsx ecx, word [eax + 2]
cmp ecx, 0x10f
jne 0x4168f1
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00414ec0
add esp, 8
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov dword [ebp - 0x808], eax
jmp 0x416920
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax]
push ecx
push 1
push 0x3b
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
mov dword [ebp - 0x808], ecx
jmp case.0x416563.1
mov edx, dword [ebp - 4]
cmp dword [edx - 8], 0
je 0x41697c
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
movsx edx, word [ecx]
cmp edx, 0x107
jne 0x41697c
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
push ecx
push 0x103
push 1
push 0x138
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x880], eax
jmp 0x416988
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
mov dword [ebp - 0x880], ecx
mov edx, dword [ebp - 0x880]
mov dword [ebp - 0x808], edx
jmp case.0x416563.1
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov dword [0x458b30], ecx
jmp case.0x416563.1
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov ecx, dword [eax + 0x10]
mov dword [0x458ae4], ecx
jmp case.0x416563.1
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
mov dword [ebp - 0x808], eax
mov dword [0x458ae4], 0
jmp case.0x416563.1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
push edx
call fcn.00415f20
add esp, 4
test eax, eax
je 0x4169f7
push str.assignment_used_as_boolean_in_if_statement
call fcn.0041b810
add esp, 4
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
movsx edx, word [ecx]
cmp edx, 0x107
jne 0x416a34
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
push ecx
push 0x103
push 1
push 0x138
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov ecx, dword [ebp - 4]
mov dword [ecx - 0x18], eax
jmp 0x416a7b
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
movsx ecx, word [eax]
cmp ecx, 0x103
jl 0x416a56
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
movsx ecx, word [eax]
cmp ecx, 0x105
jle 0x416a7b
push 0
push 0
push 0x103
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00415360
add esp, 0x14
mov edx, dword [ebp - 4]
mov dword [edx - 0x18], eax
mov eax, dword [ebp - 4]
cmp dword [eax - 8], 0
je 0x416a95
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
movsx eax, word [edx]
mov dword [ebp - 0x884], eax
jmp 0x416a9f
mov dword [ebp - 0x884], 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
push ecx
mov edx, dword [ebp - 0x884]
push edx
push 1
push 0x3a
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
push edx
push 0x103
push 1
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x28]
mov edx, dword [ecx + 0xc]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
push 0
push 0
push 0x103
push 0
push 0x119
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov edx, dword [ebp - 0x808]
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
mov dword [edx + 0x20], ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
cmp dword [eax + 0x28], 0
je 0x416b4c
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
mov eax, dword [edx + 0x28]
movsx ecx, word [eax + 2]
cmp ecx, 0x113
je 0x416b59
push 0x4524d8
call fcn.0041b6a0
add esp, 4
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
mov ecx, dword [eax + 0x28]
mov edx, dword [ebp - 0x808]
mov eax, dword [ecx + 0x20]
mov dword [edx + 0x24], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
movsx eax, word [edx + 2]
cmp eax, 0x11b
jne 0x416b9e
mov ecx, dword [ebp - 0x808]
mov edx, dword [ecx + 0x24]
cmp dword [edx + 0x10], 0x103
je 0x416b9e
push 0x4524f8
call fcn.0041b6a0
add esp, 4
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
mov edx, dword [ecx + 0x28]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00414ec0
add esp, 8
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
mov dword [edx + 0x28], 0
mov eax, dword [ebp - 0x808]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov dword [eax + 0x28], edx
jmp case.0x416563.1
mov eax, dword [ebp - 4]
cmp dword [eax - 0x20], 0
jne 0x416c1d
push 0
push 0
push 0x103
push 0
push 0x10f
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov edx, dword [ebp - 4]
mov dword [edx - 0x20], eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x20]
mov dword [ecx + 0x20], 1
mov dword [ecx + 0x24], 0
jmp 0x416ca1
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x20]
movsx ecx, word [eax]
cmp ecx, 0x107
jne 0x416c5a
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x20]
push eax
push 0x103
push 1
push 0x138
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov edx, dword [ebp - 4]
mov dword [edx - 0x20], eax
jmp 0x416ca1
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x20]
movsx edx, word [ecx]
cmp edx, 0x103
jl 0x416c7c
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x20]
movsx edx, word [ecx]
cmp edx, 0x105
jle 0x416ca1
push 0
push 0
push 0x103
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x20]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00415360
add esp, 0x14
mov ecx, dword [ebp - 4]
mov dword [ecx - 0x20], eax
mov edx, dword [ebp - 4]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
push edx
push 0
push 1
push 0x3b
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x20]
push edx
push 0x103
push 1
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x40]
mov edx, dword [ecx + 0xc]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov ecx, dword [ebp - 4]
cmp dword [ecx - 0x30], 0
je 0x416d24
mov edx, dword [ebp - 0x808]
push edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x30]
push ecx
push 0x103
push 1
push 0x3b
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
push 0
push 0
push 0x103
push 0
push 0x11a
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov ecx, dword [ebp - 0x808]
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
mov dword [ecx + 0x20], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
cmp dword [edx + 0x28], 0
je 0x416d7c
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
mov edx, dword [ecx + 0x28]
movsx eax, word [edx + 2]
cmp eax, 0x113
je 0x416d89
push str.simple_index_variable_expected
call fcn.0041b6a0
add esp, 4
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
mov eax, dword [edx + 0x28]
mov ecx, dword [ebp - 0x808]
mov edx, dword [eax + 0x20]
mov dword [ecx + 0x24], edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
movsx edx, word [ecx + 2]
cmp edx, 0x11b
jne 0x416dcf
mov eax, dword [ebp - 0x808]
mov ecx, dword [eax + 0x24]
cmp dword [ecx + 0x10], 0x103
je 0x416dcf
push str.integer_index_variable_expected
call fcn.0041b6a0
add esp, 4
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
mov ecx, dword [eax + 0x28]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00414ec0
add esp, 8
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
mov dword [ecx + 0x28], 0
mov edx, dword [ebp - 0x808]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov dword [edx + 0x28], ecx
jmp case.0x416563.1
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
cmp dword [eax + 0x28], 0
jne 0x416e2b
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
add edx, 0x34
push edx
push 0x452558
call fcn.0041b6a0
add esp, 8
push 0
push 0
push 0x103
push 0
push 0x132
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov ecx, dword [ebp - 0x808]
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
mov dword [ecx + 0x20], eax
mov ecx, dword [ebp - 0x808]
mov dword [ecx + 0x28], 0
jmp case.0x416563.1
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
cmp dword [eax + 0x28], 0
jne 0x416e93
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
add edx, 0x34
push edx
push str.cannot_apply_unset_to_non_array__s
call fcn.0041b6a0
add esp, 8
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
cmp dword [ecx + 0x14], 0
jle 0x416efe
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
movsx ecx, word [eax]
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
cmp ecx, dword [eax + 0x14]
je 0x416efe
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
movsx eax, word [edx]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.004152c0
add esp, 8
push eax
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
mov ecx, dword [eax + 0x14]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.004152c0
add esp, 8
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
add ecx, 0x34
push ecx
push 0x4525a0
call fcn.0041b6a0
add esp, 0x10
push 0
push 0
push 0x103
push 0
push 0x132
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov eax, dword [ebp - 0x808]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
mov dword [eax + 0x20], edx
mov eax, dword [ebp - 0x808]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
mov dword [eax + 0x28], edx
jmp case.0x416563.1
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
push ecx
call fcn.00415f20
add esp, 4
test eax, eax
je 0x416f66
push str.assignment_used_as_boolean_in_while_statement
call fcn.0041b810
add esp, 4
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
movsx ecx, word [eax]
cmp ecx, 0x107
jne 0x416fa3
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
push eax
push 0x103
push 1
push 0x138
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov edx, dword [ebp - 4]
mov dword [edx - 0x10], eax
jmp 0x416fea
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
movsx edx, word [ecx]
cmp edx, 0x103
jl 0x416fc5
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
movsx edx, word [ecx]
cmp edx, 0x105
jle 0x416fea
push 0
push 0
push 0x103
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00415360
add esp, 0x14
mov ecx, dword [ebp - 4]
mov dword [ecx - 0x10], eax
mov edx, dword [ebp - 4]
mov eax, dword [edx]
push eax
push 0
push 0
push 1
push 0x3b
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
push eax
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
push eax
push 0x103
push 1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x20]
mov eax, dword [edx + 0xc]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax]
mov dword [0x458ae4], ecx
jmp case.0x416563.1
mov edx, dword [0x458b38]
mov dword [ebp - 0x838], edx
mov eax, dword [ebp - 0x838]
mov ecx, dword [eax + 4]
push ecx
mov edx, dword [ebp - 0x838]
mov eax, dword [edx + 0xc]
push eax
push 0
push 1
push 0x112
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
push eax
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x28]
push eax
push 0x103
push 1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x38]
mov eax, dword [edx + 0xc]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov edx, dword [0x458b38]
mov eax, dword [edx]
mov dword [0x458b38], eax
mov ecx, dword [ebp - 0x838]
cmp dword [ecx + 0x10], 0
je 0x4170df
mov edx, dword [ebp - 0x838]
mov eax, dword [edx + 0x10]
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
cmp dword [ebp - 0x838], 0x4546ac
je 0x4170fb
mov ecx, dword [ebp - 0x838]
push ecx
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
mov dword [0x458ae4], 0
jmp case.0x416563.1
mov edx, dword [ebp - 4]
cmp dword [edx - 8], 0
jne 0x41714d
push 0
push 0
push 0x103
push 0
push 0x10f
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov ecx, dword [ebp - 4]
mov dword [ecx - 8], eax
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
mov dword [eax + 0x20], 1
mov dword [eax + 0x24], 0
jmp 0x417191
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
movsx eax, word [edx]
cmp eax, 0x103
jl 0x41716d
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
movsx eax, word [edx]
cmp eax, 0x105
jle 0x417191
push 0
push 0
push 0x103
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00415360
add esp, 0x14
mov ecx, dword [ebp - 4]
mov dword [ecx - 8], eax
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
push eax
push 0x103
push 1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
mov eax, dword [edx + 0xc]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
jmp case.0x416563.21
mov edx, dword [ebp - 4]
cmp dword [edx - 8], 0
je 0x417245
cmp dword [0x458b24], 0
je 0x4171fa
mov eax, dword [0x458b24]
movsx ecx, word [eax]
test ecx, ecx
jne 0x4171fa
push str.return_in_void_function
call fcn.0041b6a0
add esp, 4
cmp dword [0x458b24], 0
je 0x417214
mov edx, dword [0x458b24]
movsx eax, word [edx]
mov dword [ebp - 0x888], eax
jmp 0x41721e
mov dword [ebp - 0x888], 0x103
push 0
push 0
mov ecx, dword [ebp - 0x888]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00415360
add esp, 0x14
mov edx, dword [ebp - 4]
mov dword [edx - 8], eax
mov eax, dword [ebp - 4]
cmp dword [eax - 8], 0
je 0x41725f
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
movsx eax, word [edx]
mov dword [ebp - 0x88c], eax
jmp 0x417269
mov dword [ebp - 0x88c], 0
push 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
push edx
mov eax, dword [ebp - 0x88c]
push eax
push 1
push 0x128
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
cmp dword [0x458b38], 0
je 0x4172dd
push 0x24
push 1
call dword [sym.imp.MSVCR90.dll_calloc]
add esp, 8
mov dword [ebp - 0x840], eax
cmp dword [ebp - 0x840], 0
jne 0x4172ce
call fcn.0041dd30
mov dword [ebp - 0x840], 0x4546ac
mov edx, dword [ebp - 0x840]
mov eax, dword [0x458b38]
mov dword [edx], eax
jmp 0x4172e7
mov dword [ebp - 0x840], 0x4546ac
mov ecx, dword [ebp - 0x840]
mov dword [0x458b38], ecx
mov edx, dword [ebp - 0x840]
mov eax, dword [0x458ae4]
mov dword [edx + 0x20], eax
mov ecx, dword [ebp - 0x840]
mov dword [ecx + 4], 0
mov edx, dword [ebp - 0x840]
mov dword [edx + 8], 0
mov eax, dword [ebp - 0x840]
mov dword [eax + 0xc], 0
mov ecx, dword [ebp - 0x840]
mov dword [ecx + 0x1c], 0
mov dword [ebp - 0x83c], 8
mov edx, dword [ebp - 0x83c]
shl edx, 2
push edx
push 1
call dword [sym.imp.MSVCR90.dll_calloc]
add esp, 8
mov ecx, dword [ebp - 0x840]
mov dword [ecx + 0x10], eax
mov edx, dword [ebp - 0x840]
cmp dword [edx + 0x10], 0
jne 0x417378
call fcn.0041dd30
mov dword [ebp - 0x83c], 0
mov eax, dword [ebp - 0x840]
mov ecx, dword [ebp - 0x840]
mov edx, dword [ecx + 0x10]
mov dword [eax + 0x14], edx
mov eax, dword [ebp - 0x840]
mov ecx, dword [eax + 0x10]
mov edx, dword [ebp - 0x83c]
lea eax, [ecx + edx*4]
mov ecx, dword [ebp - 0x840]
mov dword [ecx + 0x18], eax
jmp case.0x416563.1
mov edx, dword [0x458b38]
mov dword [ebp - 0x848], edx
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
push 0
push 1
push 0x10e
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov eax, dword [ebp - 0x848]
mov ecx, dword [ebp - 0x848]
mov edx, dword [eax + 0x14]
cmp edx, dword [ecx + 0x10]
jbe 0x4174d2
mov eax, dword [ebp - 0x848]
cmp dword [eax + 8], 0
je 0x417414
mov ecx, dword [ebp - 0x848]
mov edx, dword [ecx + 8]
mov eax, dword [ebp - 0x808]
mov dword [edx + 0x24], eax
jmp 0x417423
mov ecx, dword [ebp - 0x848]
mov edx, dword [ebp - 0x808]
mov dword [ecx + 4], edx
mov eax, dword [ebp - 0x848]
mov ecx, dword [ebp - 0x808]
mov dword [eax + 8], ecx
mov edx, dword [ebp - 0x848]
mov eax, dword [ebp - 0x848]
mov ecx, dword [edx + 0x14]
sub ecx, dword [eax + 0x10]
sar ecx, 2
mov dword [ebp - 0x844], ecx
mov edx, dword [ebp - 0x848]
mov eax, dword [ebp - 0x848]
mov ecx, dword [eax + 0x10]
mov dword [edx + 0x14], ecx
push 7
mov edx, dword [ebp - 0x844]
lea eax, [edx*4 + 4]
push eax
push 0
mov ecx, dword [0x458b20]
mov edx, dword [ecx + 0x34]
push edx
mov eax, dword [0x458b20]
mov ecx, dword [eax + 0x34]
mov edx, dword [ecx + 4]
call edx
add esp, 0x10
mov ecx, dword [ebp - 0x808]
mov dword [ecx + 0x28], eax
mov edx, dword [ebp - 0x844]
shl edx, 2
push edx
mov eax, dword [ebp - 0x848]
mov ecx, dword [eax + 0x10]
push ecx
mov edx, dword [ebp - 0x808]
mov eax, dword [edx + 0x28]
push eax
call sub.MSVCR90.dll_memcpy
add esp, 0xc
mov ecx, dword [ebp - 0x808]
mov edx, dword [ecx + 0x28]
mov eax, dword [ebp - 0x844]
mov dword [edx + eax*4], 0
jmp 0x4174df
mov ecx, dword [ebp - 0x808]
mov dword [ecx + 0x28], 0
mov edx, dword [ebp - 0x848]
cmp dword [edx + 0x1c], 0
je 0x417521
mov eax, dword [ebp - 0x848]
mov dword [eax + 0x1c], 0
mov ecx, dword [ebp - 0x848]
cmp dword [ecx + 0xc], 0
je 0x417513
push str.duplicate_default_in_switch
call fcn.0041b6a0
add esp, 4
jmp 0x417521
mov edx, dword [ebp - 0x848]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov dword [edx + 0xc], ecx
jmp case.0x416563.1
mov edx, dword [0x458b38]
mov eax, dword [0x458b38]
mov ecx, dword [edx + 0x14]
cmp ecx, dword [eax + 0x18]
jb 0x41760b
mov edx, dword [0x458b38]
mov eax, dword [0x458b38]
mov ecx, dword [edx + 0x14]
sub ecx, dword [eax + 0x10]
sar ecx, 2
mov dword [ebp - 0x84c], ecx
mov edx, dword [0x458b38]
cmp dword [edx + 0x10], 0
je 0x41758a
mov eax, dword [ebp - 0x84c]
shl eax, 1
shl eax, 2
push eax
mov ecx, dword [0x458b38]
mov edx, dword [ecx + 0x10]
push edx
call dword [sym.imp.MSVCR90.dll_realloc]
add esp, 8
mov dword [ebp - 0x890], eax
jmp 0x4175a7
mov eax, dword [ebp - 0x84c]
shl eax, 1
shl eax, 2
push eax
push 1
call dword [sym.imp.MSVCR90.dll_calloc]
add esp, 8
mov dword [ebp - 0x890], eax
mov ecx, dword [0x458b38]
mov edx, dword [ebp - 0x890]
mov dword [ecx + 0x10], edx
cmp dword [ebp - 0x890], 0
jne 0x4175d6
push str.too_many_case_labels_for_switch
call fcn.0041b6a0
add esp, 4
mov dword [ebp - 0x84c], 0
mov eax, dword [0x458b38]
mov ecx, dword [eax + 0x10]
mov edx, dword [ebp - 0x84c]
lea eax, [ecx + edx*4]
mov ecx, dword [0x458b38]
mov dword [ecx + 0x14], eax
mov edx, dword [ebp - 0x84c]
shl edx, 1
mov eax, dword [0x458b38]
mov ecx, dword [eax + 0x10]
lea edx, [ecx + edx*4]
mov eax, dword [0x458b38]
mov dword [eax + 0x18], edx
mov ecx, dword [0x458b38]
cmp dword [ecx + 0x14], 0
je 0x417668
push 0
push 0
mov edx, dword [0x458b38]
mov eax, dword [edx + 0x20]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00415360
add esp, 0x14
mov ecx, dword [ebp - 4]
mov dword [ecx - 8], eax
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
add eax, 0x20
mov ecx, dword [0x458b38]
mov edx, dword [ecx + 0x14]
mov dword [edx], eax
mov eax, dword [0x458b38]
mov ecx, dword [eax + 0x14]
add ecx, 4
mov edx, dword [0x458b38]
mov dword [edx + 0x14], ecx
jmp case.0x416563.1
mov eax, dword [0x458b38]
mov dword [eax + 0x1c], 1
jmp case.0x416563.1
mov dword [ebp - 0x808], 0
mov dword [ebp - 0x804], 0
jmp case.0x416563.1
mov dword [ebp - 0x808], 1
mov dword [ebp - 0x804], 0
jmp case.0x416563.1
mov ecx, dword [ebp - 4]
cmp dword [ecx], 0
je 0x417709
mov edx, dword [ebp - 4]
cmp dword [edx - 0x10], 0
je 0x4176f2
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
movsx eax, word [edx]
push eax
push 1
push 0x2c
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x894], eax
jmp 0x4176fd
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov dword [ebp - 0x894], eax
mov ecx, dword [ebp - 0x894]
mov dword [ebp - 0x808], ecx
jmp case.0x416563.1
mov edx, dword [ebp - 4]
mov eax, dword [edx]
push eax
call fcn.0041b330
add esp, 4
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov dword [0x458ae0], edx
jmp case.0x416563.1
mov dword [ebp - 0x808], 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
cmp dword [ecx + 0x10], 0
je 0x41774b
cmp dword [0x458ae4], 0
je 0x41775a
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
mov ecx, dword [0x458ae4]
mov dword [eax + 0x10], ecx
mov edx, dword [ebp - 4]
cmp dword [edx], 0
je 0x4177a4
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx + 2]
cmp edx, 0x125
jne 0x4177a4
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
mov dword [ecx + 8], 0x125
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
movsx eax, word [eax]
mov dword [edx + 0x10], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov dword [edx + 0x1c], ecx
jmp 0x4179b6
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
mov dword [eax + 8], 0x113
push 0
push 0
push 0
push 0
push 0
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov edx, dword [ebp - 4]
mov ecx, dword [edx - 0x18]
mov dword [ecx + 0x1c], eax
mov edx, dword [ebp - 4]
mov dword [ebp - 0x898], edx
mov eax, dword [ebp - 0x898]
mov ecx, dword [ebp - 0x898]
mov edx, dword [eax - 8]
or edx, dword [ecx - 4]
je 0x4178cf
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
cmp dword [ecx + 0x28], 0
jne 0x4178cf
push 0x24
push 1
call dword [sym.imp.MSVCR90.dll_calloc]
add esp, 8
mov dword [ebp - 0x850], eax
cmp dword [ebp - 0x850], 0
jne 0x417825
call fcn.0041dd30
mov edx, dword [ebp - 4]
mov dword [ebp - 0x89c], edx
mov eax, dword [ebp - 0x89c]
cmp dword [eax - 8], 0x103
jne 0x417871
mov ecx, dword [ebp - 0x89c]
cmp dword [ecx - 4], 0
jne 0x417871
mov edx, dword [ebp - 0x850]
mov dword [edx], 8
mov eax, dword [ebp - 0x850]
mov dword [eax + 4], 8
mov ecx, dword [ebp - 0x850]
mov dword [ecx + 0x14], 0x41b3f0
jmp 0x41787d
mov edx, dword [ebp - 0x850]
mov dword [edx], 0x18
mov eax, dword [sym.imp.cdt.dll_Dtoset]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x850]
push edx
call sub.cdt.dll_dtopen
add esp, 8
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
mov dword [edx + 0x28], eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
cmp dword [ecx + 0x28], 0
jne 0x4178c0
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
add eax, 0x34
push eax
push str._s:_cannot_initialize_associative_array
call fcn.0041b6a0
add esp, 8
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
mov dword [edx + 0x14], ecx
mov edx, dword [ebp - 4]
cmp dword [edx], 0
je 0x417978
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
cmp edx, dword [ecx + 0x10]
je 0x41792e
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov ax, word [eax + 0x10]
mov word [edx], ax
push 0
push 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
mov eax, dword [edx + 0x10]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov eax, dword [edx + 0x24]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00415360
add esp, 0x14
mov edx, dword [ebp - 4]
mov ecx, dword [edx]
mov dword [ecx + 0x24], eax
push 0
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
mov ecx, dword [eax + 0x10]
push ecx
push 0
push 0x113
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov dword [edx + 0x20], eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x20]
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
mov dword [edx + 0x20], ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov dword [ebp - 0x808], eax
jmp 0x4179b6
mov ecx, dword [ebp - 4]
mov dword [ebp - 0x8a0], ecx
mov edx, dword [ebp - 0x8a0]
mov eax, dword [ebp - 0x8a0]
mov ecx, dword [edx - 8]
or ecx, dword [eax - 4]
jne 0x4179b6
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
mov ecx, dword [eax + 0x10]
push ecx
call fcn.0041db90
add esp, 4
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx - 0x18]
mov ecx, dword [ecx + 0x1c]
mov dword [ecx + 0x20], eax
mov dword [ecx + 0x24], edx
jmp case.0x416563.1
mov dword [ebp - 0x808], 0
jmp case.0x416563.1
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
mov dword [ebp - 0x808], 0
jmp case.0x416563.1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
mov dword [ebp - 0x808], edx
jmp case.0x416563.1
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
cmp edx, dword [ecx + 0x10]
jne 0x417a1a
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov dword [ebp - 0x8a4], eax
jmp 0x417a42
push 0
push 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
mov eax, dword [edx + 0x10]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00415360
add esp, 0x14
mov dword [ebp - 0x8a4], eax
mov ecx, dword [ebp - 0x8a4]
mov dword [ebp - 0x808], ecx
jmp case.0x416563.1
mov dword [ebp - 0x854], 0x103
jmp 0x417a69
mov dword [ebp - 0x854], 0
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
movsx ecx, word [eax]
test ecx, ecx
jne 0x417ac3
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax]
test ecx, ecx
jne 0x417ab0
xor edx, edx
cmp dword [ebp - 0x854], 0
setne dl
lea edx, [edx*4 + 0x103]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov word [ecx], dx
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
mov ax, word [eax]
mov word [edx], ax
jmp 0x417ac1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
mov dx, word [edx]
mov word [ecx], dx
jmp 0x417ae0
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
test edx, edx
jne 0x417ae0
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov cx, word [ecx]
mov word [eax], cx
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
movsx ecx, word [eax]
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx edx, word [eax]
cmp ecx, edx
je 0x417bef
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
movsx edx, word [ecx]
cmp edx, 0x107
jne 0x417b3c
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00415360
add esp, 0x14
mov edx, dword [ebp - 4]
mov dword [edx - 0x10], eax
jmp 0x417bef
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
cmp edx, 0x107
jne 0x417b7b
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
movsx ecx, word [eax]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00415360
add esp, 0x14
mov edx, dword [ebp - 4]
mov dword [edx], eax
jmp 0x417bef
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
movsx edx, word [ecx]
cmp edx, 0x106
jne 0x417bb6
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
push ecx
push 0x106
mov edx, dword [ebp - 4]
mov eax, dword [edx]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00415360
add esp, 0x14
mov edx, dword [ebp - 4]
mov dword [edx], eax
jmp 0x417bef
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
cmp edx, 0x106
jne 0x417bef
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
push 0x106
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00415360
add esp, 0x14
mov edx, dword [ebp - 4]
mov dword [edx - 0x10], eax
cmp dword [ebp - 0x854], 0
jne 0x417c58
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
movsx edx, word [ecx]
cmp edx, 0x107
jne 0x417c15
mov dword [ebp - 0x8a8], 0x107
jmp 0x417c4c
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
movsx edx, word [ecx]
cmp edx, 0x104
jne 0x417c32
mov dword [ebp - 0x8ac], 0x104
jmp 0x417c40
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
mov dword [ebp - 0x8ac], edx
mov eax, dword [ebp - 0x8ac]
mov dword [ebp - 0x8a8], eax
mov ecx, dword [ebp - 0x8a8]
mov dword [ebp - 0x854], ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
push edx
mov eax, dword [ebp - 0x854]
push eax
push 1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov ecx, dword [0x458b20]
cmp dword [ecx + 0x2e0], 0
jne 0x417d2a
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
movsx ecx, word [eax + 2]
cmp ecx, 0x10f
jne 0x417d2a
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax + 2]
cmp ecx, 0x10f
jne 0x417d2a
push 0
mov edx, dword [ebp - 0x808]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00414a50
add esp, 0xc
mov ecx, dword [ebp - 0x808]
mov dword [ecx + 0x20], eax
mov dword [ecx + 0x24], edx
xor edx, edx
mov eax, dword [ebp - 0x808]
mov word [eax + 4], dx
mov ecx, 0x10f
mov edx, dword [ebp - 0x808]
mov word [edx + 2], cx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00414ec0
add esp, 8
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00414ec0
add esp, 8
jmp 0x417d6e
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
movsx edx, word [ecx]
cmp edx, 0x102
jle 0x417d4b
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
cmp edx, 0x102
jg 0x417d6e
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x808]
push edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.0041b270
add esp, 0x10
jmp case.0x416563.1
jmp 0x417a5f
jmp 0x417a5f
jmp 0x417a5f
jmp 0x417a5f
jmp 0x417a5f
jmp 0x417a5f
jmp case.0x416563.49
jmp case.0x416563.49
jmp case.0x416563.49
jmp case.0x416563.49
jmp case.0x416563.49
jmp 0x417a5f
jmp 0x417a5f
jmp 0x417a5f
jmp 0x417a5f
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
movsx edx, word [ecx]
cmp edx, 0x107
jne 0x417e46
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
push ecx
push 0x103
push 1
push 0x138
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov ecx, dword [ebp - 4]
mov dword [ecx - 0x10], eax
jmp 0x417e7c
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
movsx ecx, word [eax]
cmp ecx, 0x102
jg 0x417e7c
push 0
push 0
push 0x103
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00415360
add esp, 0x14
mov edx, dword [ebp - 4]
mov dword [edx - 0x10], eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
cmp edx, 0x107
jne 0x417eb6
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
push 0x103
push 1
push 0x138
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov ecx, dword [ebp - 4]
mov dword [ecx], eax
jmp 0x417ee9
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax]
cmp ecx, 0x102
jg 0x417ee9
push 0
push 0
push 0x103
mov edx, dword [ebp - 4]
mov eax, dword [edx]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00415360
add esp, 0x14
mov edx, dword [ebp - 4]
mov dword [edx], eax
jmp 0x417a5f
jmp case.0x416563.65
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
movsx edx, word [ecx + 2]
cmp edx, 0x10f
jne 0x417f32
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00414ec0
add esp, 8
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov dword [ebp - 0x808], ecx
jmp 0x417f60
mov edx, dword [ebp - 4]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
push edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
push edx
push 1
push 0x2c
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
mov dword [0x458aec], 1
jmp case.0x416563.1
mov dword [0x458aec], 0
jmp case.0x416563.1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
movsx eax, word [edx]
test eax, eax
jne 0x417fcc
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
movsx eax, word [edx]
test eax, eax
jne 0x417fb9
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov eax, 0x103
mov word [edx], ax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
mov eax, 0x103
mov word [edx], ax
jmp 0x417fca
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
mov dx, word [edx]
mov word [ecx], dx
jmp 0x417fe9
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
test edx, edx
jne 0x417fe9
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov cx, word [ecx]
mov word [eax], cx
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x30]
movsx ecx, word [eax]
cmp ecx, 0x107
jne 0x418026
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x30]
push eax
push 0x103
push 1
push 0x138
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov edx, dword [ebp - 4]
mov dword [edx - 0x30], eax
jmp 0x41806d
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x30]
movsx edx, word [ecx]
cmp edx, 0x103
jl 0x418048
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x30]
movsx edx, word [ecx]
cmp edx, 0x105
jle 0x41806d
push 0
push 0
push 0x103
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x30]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00415360
add esp, 0x14
mov ecx, dword [ebp - 4]
mov dword [ecx - 0x30], eax
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
movsx ecx, word [eax]
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx edx, word [eax]
cmp ecx, edx
je 0x418121
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
movsx edx, word [ecx]
cmp edx, 0x107
je 0x4180a7
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
cmp edx, 0x107
jne 0x4180b6
push str.if_statement_string_type_mismatch
call fcn.0041b6a0
add esp, 4
jmp 0x418121
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
movsx edx, word [ecx]
cmp edx, 0x106
jne 0x4180ec
push 0
push 0
push 0x106
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00415360
add esp, 0x14
mov ecx, dword [ebp - 4]
mov dword [ecx], eax
jmp 0x418121
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax]
cmp ecx, 0x106
jne 0x418121
push 0
push 0
push 0x106
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00415360
add esp, 0x14
mov edx, dword [ebp - 4]
mov dword [edx - 0x18], eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x30]
movsx edx, word [ecx + 2]
cmp edx, 0x10f
jne 0x4181ae
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x30]
mov dword [ebp - 0x8b0], ecx
mov edx, dword [ebp - 0x8b0]
mov eax, dword [ebp - 0x8b0]
mov ecx, dword [edx + 0x20]
or ecx, dword [eax + 0x24]
je 0x418175
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
mov dword [ebp - 0x808], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00414ec0
add esp, 8
jmp 0x418196
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov dword [ebp - 0x808], edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00414ec0
add esp, 8
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x30]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00414ec0
add esp, 8
jmp 0x418203
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
movsx eax, word [edx]
push eax
push 1
push 0x3a
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
push eax
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x30]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
movsx eax, word [edx]
push eax
push 1
push 0x3f
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax]
cmp ecx, 0x107
jne 0x418242
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx]
push eax
push 0x103
push 1
push 0x138
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov edx, dword [ebp - 4]
mov dword [edx], eax
jmp 0x418285
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
cmp edx, 0x103
jl 0x418262
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
cmp edx, 0x105
jle 0x418285
push 0
push 0
push 0x103
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00415360
add esp, 0x14
mov ecx, dword [ebp - 4]
mov dword [ecx], eax
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax]
cmp ecx, 0x104
jne 0x4182a1
mov dword [ebp - 0x8b4], 0x103
jmp 0x4182af
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax]
mov dword [ebp - 0x8b4], ecx
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x8b4]
push ecx
push 1
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax + 2]
cmp ecx, 0x10f
jne 0x418342
push 0
mov edx, dword [ebp - 0x808]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00414a50
add esp, 0xc
mov ecx, dword [ebp - 0x808]
mov dword [ecx + 0x20], eax
mov dword [ecx + 0x24], edx
xor edx, edx
mov eax, dword [ebp - 0x808]
mov word [eax + 4], dx
mov ecx, 0x10f
mov edx, dword [ebp - 0x808]
mov word [edx + 2], cx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00414ec0
add esp, 8
jmp 0x41836f
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
cmp edx, 0x102
jg 0x41836f
push 0
mov eax, dword [ebp - 0x808]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.0041b270
add esp, 0x10
jmp case.0x416563.1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
cmp dword [edx + 0x28], 0
jne 0x418395
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
add ecx, 0x34
push ecx
push str.cannot_apply__operator_to_non_array__s
call fcn.0041b6a0
add esp, 8
push 0
push 0
push 0x103
push 0
push 0x23
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov eax, dword [ebp - 0x808]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov dword [eax + 0x20], edx
jmp case.0x416563.1
jmp case.0x416563.71
jmp 0x418285
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov dword [ebp - 0x808], ecx
jmp case.0x416563.1
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
movsx eax, word [edx]
push eax
call fcn.00419f40
add esp, 4
push eax
push 0
push 0x10a
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
push edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
push ecx
push 0
call fcn.0041a770
add esp, 0xc
push eax
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
mov ecx, dword [eax + 0x10]
push ecx
call fcn.00419f40
add esp, 4
push eax
push 1
push 0x10b
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
push edx
push 0
call fcn.0041a770
add esp, 0xc
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
mov edx, dword [ecx + 0x10]
push edx
call fcn.00419f40
add esp, 4
push eax
push 1
push 0x117
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
push 0x118
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.0041a100
add esp, 0xc
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
push 0x12e
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.0041a100
add esp, 0xc
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.0041a260
add esp, 8
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
push 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
push edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x28]
mov ecx, dword [eax + 0xc]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00419f80
add esp, 0x14
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x28]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
push edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x38]
mov edx, dword [ecx + 0xc]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00419f80
add esp, 0x14
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
movsx eax, word [edx]
cmp eax, 0x103
jl 0x4185c6
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
movsx eax, word [edx]
cmp eax, 0x105
jle 0x4185ea
push 0
push 0
push 0x103
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00415360
add esp, 0x14
mov ecx, dword [ebp - 4]
mov dword [ecx - 8], eax
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
push eax
push 0x103
push 1
push 0x115
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
push 0
push 0
push 0x106
push 0
push 0x127
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
push 0
push 0
push 0x103
push 0
push 0x12c
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
movsx eax, word [edx]
cmp eax, 0x103
jl 0x41868c
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
movsx eax, word [edx]
cmp eax, 0x105
jle 0x4186b0
push 0
push 0
push 0x103
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00415360
add esp, 0x14
mov ecx, dword [ebp - 4]
mov dword [ecx - 8], eax
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
push eax
push 0x103
push 1
push 0x12c
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
push eax
push 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
mov eax, dword [edx + 0x10]
push eax
push 1
push 0x10d
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov edx, dword [ebp - 0x808]
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
mov dword [edx + 0x20], ecx
jmp case.0x416563.1
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.0041a360
add esp, 0xc
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
push 0
push 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
mov eax, dword [edx + 0x10]
push eax
push 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
mov eax, dword [edx + 0xc]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov edx, dword [ebp - 4]
cmp dword [edx - 8], 0
je 0x4187ba
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
mov edx, dword [ecx + 0x20]
movsx eax, word [edx]
cmp eax, 0x103
jne 0x4187ba
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
mov eax, dword [ebp - 0x808]
mov ecx, dword [edx + 0x20]
mov dword [eax + 0x20], ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
mov ecx, dword [ebp - 4]
mov edx, dword [eax + 0x24]
mov dword [ecx - 8], edx
jmp 0x418884
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x8b8], edx
cmp dword [ebp - 0x8b8], 0x124
je 0x418836
cmp dword [ebp - 0x8b8], 0x126
je 0x4187f6
cmp dword [ebp - 0x8b8], 0x12b
je 0x418877
jmp 0x418884
push 0
push 0
push 0x103
push 0
push 0x10f
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov ecx, dword [ebp - 0x808]
mov dword [ecx + 0x20], eax
mov edx, dword [ebp - 0x808]
mov eax, dword [edx + 0x20]
mov dword [eax + 0x20], 2
mov dword [eax + 0x24], 0
jmp 0x418884
push 0
push 0
push 0x103
push 0
push 0x10f
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov edx, dword [ebp - 0x808]
mov dword [edx + 0x20], eax
mov eax, dword [ebp - 0x808]
mov ecx, dword [eax + 0x20]
mov dword [ecx + 0x20], 1
mov dword [ecx + 0x24], 0
jmp 0x418884
mov edx, dword [ebp - 0x808]
mov dword [edx + 0x20], 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
push ecx
call fcn.0041a9a0
add esp, 4
mov edx, dword [ebp - 0x808]
mov dword [edx + 0x24], eax
jmp case.0x416563.1
push 0
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
mov edx, dword [ecx + 0x10]
push edx
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
mov edx, dword [ecx + 0xc]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov ecx, dword [ebp - 4]
cmp dword [ecx - 8], 0
je 0x418912
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
mov ecx, dword [eax + 0x20]
movsx edx, word [ecx]
cmp edx, 0x103
jne 0x418912
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
mov edx, dword [ebp - 0x808]
mov eax, dword [ecx + 0x20]
mov dword [edx + 0x20], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
mov eax, dword [ebp - 4]
mov ecx, dword [edx + 0x24]
mov dword [eax - 8], ecx
jmp 0x4189a1
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x18]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x8bc], ecx
cmp dword [ebp - 0x8bc], 0x129
je 0x41893b
cmp dword [ebp - 0x8bc], 0x12d
je 0x41894a
jmp 0x4189a1
mov edx, dword [ebp - 0x808]
mov dword [edx + 0x20], 0
jmp 0x4189a1
mov eax, dword [ebp - 4]
cmp dword [eax - 8], 0
je 0x41898a
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
mov eax, dword [edx + 0x20]
movsx ecx, word [eax]
cmp ecx, 0x107
jne 0x41898a
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
mov ecx, dword [ebp - 0x808]
mov edx, dword [eax + 0x20]
mov dword [ecx + 0x20], edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
mov edx, dword [ebp - 4]
mov eax, dword [ecx + 0x24]
mov dword [edx - 8], eax
jmp 0x4189a1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
add edx, 0x34
push edx
push 0x4526c4
call fcn.0041b6a0
add esp, 8
mov eax, dword [ebp - 4]
cmp dword [eax - 8], 0
je 0x4189c9
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
cmp dword [edx + 0x20], 0
je 0x4189c9
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
mov edx, dword [ecx + 0x20]
movsx eax, word [edx]
cmp eax, 0x107
je 0x4189e0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x18]
add edx, 0x34
push edx
push str._s:_format_argument_expected
call fcn.0041b6a0
add esp, 8
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
mov edx, dword [ebp - 0x808]
mov eax, dword [ecx + 0x20]
mov dword [edx + 0x24], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
mov eax, dword [ebp - 0x808]
mov ecx, dword [edx + 0x24]
mov dword [eax + 0x28], ecx
mov edx, dword [ebp - 0x808]
mov eax, dword [edx + 0x28]
mov dword [ebp - 0x858], eax
jmp 0x418a24
mov ecx, dword [ebp - 0x858]
mov edx, dword [ecx + 0x24]
mov dword [ebp - 0x858], edx
cmp dword [ebp - 0x858], 0
je 0x418a70
mov eax, dword [ebp - 0x858]
mov ecx, dword [eax + 0x20]
movsx edx, word [ecx + 2]
cmp edx, 0x10a
je 0x418a59
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x18]
add ecx, 0x34
push ecx
push str._s:_address_argument_expected
call fcn.0041b6a0
add esp, 8
mov edx, dword [ebp - 0x858]
mov eax, dword [edx + 0x20]
mov ecx, dword [ebp - 0x858]
mov edx, dword [eax + 0x20]
mov dword [ecx + 0x20], edx
jmp 0x418a15
jmp case.0x416563.1
mov eax, dword [ebp - 4]
cmp dword [eax], 0
je 0x418b4d
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
movsx eax, word [edx + 2]
cmp eax, 0x11b
jne 0x418ac0
mov ecx, dword [0x458b20]
mov edx, dword [ecx + 0x64]
cmp dword [edx + 0x3c], 0
jne 0x418ac0
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
mov edx, dword [ecx + 0x20]
add edx, 0x34
push edx
push str._s:_variable_assignment_not_supported
call fcn.0041b6a0
add esp, 8
jmp 0x418b4d
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
movsx edx, word [ecx]
test edx, edx
jne 0x418ae0
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
mov cx, word [ecx]
mov word [eax], cx
jmp 0x418b34
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax]
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
movsx edx, word [eax]
cmp ecx, edx
je 0x418b34
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov cx, word [ecx]
mov word [eax], cx
push 0
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
movsx ecx, word [eax]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov ecx, dword [eax + 0x24]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00415360
add esp, 0x14
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov dword [edx + 0x24], eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
mov dword [ecx + 0x20], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov dword [ebp - 0x808], edx
jmp case.0x416563.1
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
cmp edx, 0x107
jne 0x418b6f
push 0x45274c
call fcn.0041b6a0
add esp, 4
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax]
push ecx
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov edx, 0x122
mov eax, dword [ebp - 0x808]
mov word [eax + 0x30], dx
jmp case.0x416563.1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
movsx eax, word [edx]
cmp eax, 0x107
jne 0x418bcf
push str._and____invalid_for_string_variables
call fcn.0041b6a0
add esp, 4
push 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
push edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
movsx edx, word [ecx]
push edx
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov eax, 0x120
mov ecx, dword [ebp - 0x808]
mov word [ecx + 0x30], ax
jmp case.0x416563.1
mov edx, dword [ebp - 4]
mov eax, dword [edx]
cmp dword [eax + 0x28], 0
jne 0x418c34
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
add edx, 0x34
push edx
push str.cannot_apply_IN_to_non_array__s
call fcn.0041b6a0
add esp, 8
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
cmp dword [ecx + 0x14], 0
jle 0x418c9b
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
movsx ecx, word [eax]
mov edx, dword [ebp - 4]
mov eax, dword [edx]
cmp ecx, dword [eax + 0x14]
je 0x418c9b
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
movsx eax, word [edx]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.004152c0
add esp, 8
push eax
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov ecx, dword [eax + 0x14]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.004152c0
add esp, 8
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
add ecx, 0x34
push ecx
push str._s_indices_must_have_type__s__not__s
call fcn.0041b6a0
add esp, 0x10
push 0
push 0
push 0x103
push 0
push 0x14b
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov eax, dword [ebp - 0x808]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov dword [eax + 0x20], edx
mov eax, dword [ebp - 0x808]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
mov dword [eax + 0x28], edx
jmp case.0x416563.1
jmp case.0x416563.93
jmp case.0x416563.94
push 0
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x10]
push edx
push 0
push 0x10f
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov ecx, dword [0x458b20]
mov edx, dword [ecx + 0x64]
cmp dword [edx + 0x38], 0
jne 0x418d45
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
add ecx, 0x34
push ecx
push str._s:_identifier_references_not_supported
call fcn.0041b6a0
add esp, 8
jmp 0x418d86
mov edx, dword [0x458b20]
mov eax, dword [edx + 0x64]
push eax
push 0xffffffffffffffff
push 0
push 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp - 0x808]
push eax
mov ecx, dword [0x458b20]
push ecx
mov edx, dword [0x458b20]
mov eax, dword [edx + 0x64]
mov ecx, dword [eax + 0x38]
call ecx
add esp, 0x1c
mov ecx, dword [ebp - 0x808]
mov dword [ecx + 0x20], eax
mov dword [ecx + 0x24], edx
jmp case.0x416563.1
push 0
push 0
push 0x106
push 0
push 0x10f
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov eax, dword [ebp - 0x808]
mov ecx, dword [ebp - 4]
fld qword [ecx]
fstp qword [eax + 0x20]
jmp case.0x416563.1
push 0
push 0
push 0x103
push 0
push 0x10f
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov eax, dword [ebp - 0x808]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov dword [eax + 0x20], edx
mov ecx, dword [ecx + 4]
mov dword [eax + 0x24], ecx
jmp case.0x416563.1
push 0
push 0
push 0x107
push 0
push 0x10f
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov eax, dword [ebp - 0x808]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov dword [eax + 0x20], edx
jmp case.0x416563.1
push 0
push 0
push 0x104
push 0
push 0x10f
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov ecx, dword [ebp - 0x808]
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov dword [ecx + 0x20], eax
mov edx, dword [edx + 4]
mov dword [ecx + 0x24], edx
jmp case.0x416563.1
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
push 0
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.0041a650
add esp, 0x14
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
push 0
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
mov ecx, dword [eax + 0x10]
push ecx
push 0
push 0x113
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x85c], eax
mov eax, dword [ebp - 0x85c]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
mov dword [eax + 0x20], edx
mov eax, dword [ebp - 0x85c]
mov dword [eax + 0x24], 0
mov ecx, dword [ebp - 0x85c]
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
mov dword [ecx + 0x28], eax
mov ecx, dword [ebp - 0x85c]
xor edx, edx
cmp dword [ecx + 0x28], 0
sete dl
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
xor eax, eax
cmp dword [ecx + 0x28], 0
sete al
cmp edx, eax
je 0x418f58
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
cmp dword [edx + 0x28], 0
je 0x418f30
mov dword [ebp - 0x8c0], 0x4546d1
jmp 0x418f3a
mov dword [ebp - 0x8c0], str._not
mov eax, dword [ebp - 0x8c0]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
add edx, 0x34
push edx
push str._s:_is_s_an_array
call fcn.0041b6a0
add esp, 0xc
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
cmp dword [ecx + 0x28], 0
je 0x418fce
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
cmp dword [eax + 0x14], 0
jle 0x418fce
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
movsx eax, word [edx]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
cmp eax, dword [edx + 0x14]
je 0x418fce
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
movsx edx, word [ecx]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.004152c0
add esp, 8
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
mov eax, dword [edx + 0x14]
push eax
mov ecx, dword [0x458b20]
push ecx
call fcn.004152c0
add esp, 8
push eax
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
add eax, 0x34
push eax
push str._s:_indices_must_have_type__s__not__s
call fcn.0041b6a0
add esp, 0x10
mov ecx, dword [ebp - 4]
cmp dword [ecx], 0
je 0x419029
push 0
push 0
push 0
push 0
push 0
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov ecx, dword [ebp - 0x85c]
mov dword [ecx + 0x2c], eax
mov edx, dword [ebp - 4]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x85c]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
push edx
mov eax, dword [0x458b20]
push eax
call fcn.0041a650
add esp, 0x14
mov dword [ebp - 0x808], eax
jmp 0x419035
mov ecx, dword [ebp - 0x85c]
mov dword [ebp - 0x808], ecx
jmp case.0x416563.1
push 0
push 0
push 0x107
push 0
push 0x11b
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov eax, dword [ebp - 0x808]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov dword [eax + 0x20], edx
mov eax, dword [ebp - 0x808]
mov dword [eax + 0x24], 0
mov ecx, dword [ebp - 0x808]
mov dword [ecx + 0x28], 0
mov edx, dword [ebp - 0x808]
mov dword [edx + 0x2c], 0
mov eax, dword [0x458b20]
mov ecx, dword [eax + 0x64]
mov edx, dword [ecx + 4]
and edx, 0x200
jne 0x4190b4
push str.unknown_identifier
call fcn.0041b6a0
add esp, 4
jmp case.0x416563.1
mov dword [ebp - 0x808], 0
mov dword [ebp - 0x804], 0
jmp case.0x416563.1
mov dword [ebp - 0x808], 0xffffffff
mov dword [ebp - 0x804], 0xffffffff
jmp case.0x416563.1
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
cmp dword [ecx + 0x10], 0x103
jl 0x41911f
mov edx, dword [ebp - 4]
mov eax, dword [edx - 8]
cmp dword [eax + 0x10], 0x105
jg 0x41911f
mov dword [ebp - 0x808], 0x103
mov dword [ebp - 0x804], 0
jmp 0x419135
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
mov eax, dword [edx + 0x10]
cdq
mov dword [ebp - 0x808], eax
mov dword [ebp - 0x804], edx
jmp case.0x416563.1
mov dword [ebp - 0x808], 0
jmp case.0x416563.1
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
mov dword [ebp - 0x808], ecx
jmp case.0x416563.1
mov dword [ebp - 0x808], 0
jmp case.0x416563.1
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov ecx, dword [eax + 0x20]
mov dword [ebp - 0x808], ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov dword [eax + 0x24], 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov dword [edx + 0x20], 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00414ec0
add esp, 8
jmp case.0x416563.1
push 0
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx]
movsx ecx, word [eax]
push ecx
push 1
push 0x2c
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
push eax
push 0
push 1
push 0x2c
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov ecx, dword [ebp - 0x808]
mov edx, dword [ebp - 0x808]
mov eax, dword [edx + 0x20]
mov dword [ecx + 0x24], eax
jmp case.0x416563.1
push 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
movsx edx, word [ecx]
push edx
push 1
push 0x2c
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
mov ecx, dword [edx + 0x24]
mov dword [ecx + 0x24], eax
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
mov ecx, dword [eax + 0x24]
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x10]
mov ecx, dword [ecx + 0x24]
mov dword [eax + 0x24], ecx
jmp case.0x416563.1
mov dword [ebp - 0x808], 0
jmp case.0x416563.1
mov dword [ebp - 0x808], 0
mov edx, dword [ebp - 4]
mov eax, dword [edx]
cmp dword [eax + 0x10], 0
je 0x41927c
push str._void__expected
call fcn.0041b6a0
add esp, 4
jmp case.0x416563.1
push 0
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
push edx
push 1
push 0x2c
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 0x10]
mov dword [ebp - 0x808], edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
mov dword [ebp - 0x864], ecx
jmp 0x4192d5
mov edx, dword [ebp - 0x860]
mov dword [ebp - 0x864], edx
mov eax, dword [ebp - 0x864]
mov ecx, dword [eax + 0x24]
mov dword [ebp - 0x860], ecx
cmp dword [ebp - 0x860], 0
je 0x4192ef
jmp 0x4192c9
push 0
mov edx, dword [ebp - 4]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
movsx eax, word [edx]
push eax
push 1
push 0x2c
mov ecx, dword [0x458b20]
push ecx
call fcn.00414e40
add esp, 0x18
mov edx, dword [ebp - 0x864]
mov dword [edx + 0x24], eax
jmp case.0x416563.1
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x10]
mov dword [0x458ae4], edx
jmp case.0x416563.1
push 0
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
mov edx, dword [ecx + 0x10]
push edx
push 0
push 0x11b
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov ecx, dword [ebp - 0x808]
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov dword [ecx + 0x20], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov dword [edx + 8], 0x113
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 0x10]
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov ecx, dword [ecx + 0x10]
mov dword [eax + 0x10], ecx
push 0
push 0
push 0
push 0
push 0
mov edx, dword [0x458b20]
push edx
call fcn.00414e40
add esp, 0x18
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
mov dword [edx + 0x1c], eax
mov eax, dword [0x458b24]
mov ecx, dword [eax + 0x2c]
add ecx, 1
mov edx, dword [0x458b24]
mov dword [edx + 0x2c], ecx
mov dword [0x458ae4], 0
jmp case.0x416563.1
mov dword [0x458ae8], 0
mov eax, dword [0x458ae8]
mov dword [0x458b28], eax
mov ecx, dword [0x458b28]
mov dword [ebp - 0x808], ecx
jmp case.0x416563.1
push 7
push 0xc
push 0
mov edx, dword [0x458b20]
mov eax, dword [edx + 0x34]
push eax
mov ecx, dword [0x458b20]
mov edx, dword [ecx + 0x34]
mov eax, dword [edx + 4]
call eax
add esp, 0x10
mov dword [ebp - 0x868], eax
mov ecx, dword [ebp - 0x868]
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov dword [ecx + 4], eax
mov ecx, dword [ebp - 0x868]
mov dword [0x458b28], ecx
mov edx, dword [ebp - 0x868]
mov dword [0x458ae8], edx
mov eax, dword [ebp - 0x868]
mov dword [eax], 0
mov ecx, dword [ebp - 0x868]
mov dword [ecx + 8], 0
mov edx, dword [0x458b28]
mov dword [ebp - 0x808], edx
jmp case.0x416563.1
push 7
push 0xc
push 0
mov eax, dword [0x458b20]
mov ecx, dword [eax + 0x34]
push ecx
mov edx, dword [0x458b20]
mov eax, dword [edx + 0x34]
mov ecx, dword [eax + 4]
call ecx
add esp, 0x10
mov dword [ebp - 0x870], eax
mov edx, dword [ebp - 0x870]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x870]
mov dword [edx + 8], 0
mov eax, dword [ebp - 0x870]
mov dword [eax], 0
push 7
push 0xc
push 0
mov ecx, dword [0x458b20]
mov edx, dword [ecx + 0x34]
push edx
mov eax, dword [0x458b20]
mov ecx, dword [eax + 0x34]
mov edx, dword [ecx + 4]
call edx
add esp, 0x10
mov dword [ebp - 0x86c], eax
mov eax, dword [ebp - 0x86c]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx - 8]
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x86c]
mov dword [eax + 8], 0
mov ecx, dword [ebp - 0x86c]
mov edx, dword [ebp - 0x870]
mov dword [ecx], edx
mov eax, dword [ebp - 0x86c]
mov dword [0x458b28], eax
mov ecx, dword [ebp - 0x870]
mov dword [0x458ae8], ecx
mov edx, dword [0x458b28]
mov dword [ebp - 0x808], edx
jmp case.0x416563.1
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
mov dword [ebp - 0x808], ecx
jmp case.0x416563.1
mov edx, dword [ebp - 4]
mov eax, dword [edx]
mov dword [ebp - 0x808], eax
jmp case.0x416563.1
mov dword [ebp - 0x808], 0
jmp case.0x416563.1
mov ecx, dword [ebp - 4]
mov edx, dword [ecx]
push edx
push 0
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movsx edx, word [ecx]
push edx
push 1
push 0x3d
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [ebp - 0x808], eax
mov ecx, dword [ebp - 0x808]
mov edx, dword [ebp - 4]
mov ax, word [edx - 8]
mov word [ecx + 0x30], ax
jmp case.0x416563.1
cmp dword [0x458b24], 0
je 0x4195bb
mov ecx, dword [0x458ae0]
add ecx, 0x34
push ecx
push str._s:_nested_function_definitions_not_supported
call fcn.0041b6a0
add esp, 8
push 0
push 0
mov edx, dword [0x458ae4]
push edx
push 1
push 0x125
mov eax, dword [0x458b20]
push eax
call fcn.00414e40
add esp, 0x18
mov dword [0x458b24], eax
push 0x24
push 1
call dword [sym.imp.MSVCR90.dll_calloc]
add esp, 8
mov dword [ebp - 0x874], eax
cmp dword [ebp - 0x874], 0
jne 0x419601
call fcn.0041dd30
mov ecx, dword [ebp - 0x874]
mov dword [ecx], 0x34
mov edx, dword [0x458ae0]
movsx eax, byte [edx + 0x34]
movsx ecx, byte [0x4528a4]
cmp eax, ecx
jne 0x419641
push str.begin
mov edx, dword [0x458ae0]
add edx, 0x34
push edx
call sub.MSVCR90.dll_strcmp
add esp, 8
test eax, eax
je 0x4196c5
mov eax, dword [sym.imp.cdt.dll_Dtset]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x874]
push edx
call sub.cdt.dll_dtopen
add esp, 8
mov ecx, dword [0x458b24]
mov dword [ecx + 0x28], eax
mov edx, dword [0x458b24]
cmp dword [edx + 0x28], 0
je 0x41968c
mov eax, dword [0x458b20]
mov ecx, dword [eax + 4]
push ecx
mov edx, dword [0x458b24]
mov eax, dword [edx + 0x28]
push eax
call sub.cdt.dll_dtview
add esp, 8
test eax, eax
jne 0x419691
call fcn.0041dd30
mov ecx, dword [0x458b20]
mov edx, dword [0x458b24]
mov eax, dword [edx + 0x28]
mov dword [ecx + 0x3c], eax
mov ecx, dword [0x458b20]
mov edx, dword [0x458b20]
mov eax, dword [edx + 0x3c]
mov dword [ecx + 4], eax
mov ecx, dword [0x458b20]
mov dword [ecx + 0x2e4], 1
mov dword [0x458ae4], 0
jmp case.0x416563.1
mov edx, dword [0x458ae0]
mov dword [edx + 8], 0x125
mov eax, dword [0x458b24]
movsx ecx, word [eax]
mov edx, dword [0x458ae0]
mov dword [edx + 0x10], ecx
mov eax, dword [0x458b20]
mov dword [eax + 0x2e4], 0
mov dword [0x458ae4], 0
jmp case.0x416563.1
mov ecx, dword [0x458b24]
mov dword [ebp - 0x808], ecx
mov dword [0x458b24], 0
mov edx, dword [0x458b20]
cmp dword [edx + 0x3c], 0
je 0x419766
mov eax, dword [0x458b20]
mov ecx, dword [eax + 0x3c]
mov edx, dword [0x458b20]
mov eax, dword [ecx + 0x1c]
mov dword [edx + 4], eax
push 0
mov ecx, dword [0x458b20]
mov edx, dword [ecx + 0x3c]
push edx
call sub.cdt.dll_dtview
add esp, 8
mov eax, dword [0x458b20]
mov dword [eax + 0x3c], 0
mov ecx, dword [ebp - 0x808]
mov edx, dword [ebp - 4]
mov eax, dword [edx - 0x28]
mov dword [ecx + 0x20], eax
push 0
push 0
mov ecx, dword [ebp - 0x808]
movsx edx, word [ecx]
push edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax - 8]
push ecx
mov edx, dword [0x458b20]
push edx
call fcn.00415360
add esp, 0x14
mov ecx, dword [ebp - 0x808]
mov dword [ecx + 0x24], eax
mov edx, dword [0x458b20]
mov eax, dword [edx + 0x2d8]
sub eax, 1
mov ecx, dword [0x458b20]
mov dword [ecx + 0x2d8], eax
mov edx, dword [0x458b20]
mov eax, dword [edx + 0x68]
mov dword [eax + 0x18], 0x3b
cmp dword [0x458ac0], 0
je 0x419826
push str.______
push 0x4528bc
mov ecx, dword [0x453ed0]
push ecx
call fcn.004220d0
add esp, 0xc
lea edx, [ebp - 0x808]
push edx
mov eax, dword [ebp - 0x1a4]
movzx ecx, byte [eax + 0x439d28]
push ecx
mov edx, dword [0x453ed0]
push edx
call fcn.0041b460
add esp, 0xc
push 0x4528c0
mov eax, dword [0x453ed0]
push eax
call fcn.004220d0
add esp, 8
xor ecx, ecx
jne case.0x416563.1
mov edx, dword [ebp - 0x1ac]
shl edx, 3
mov eax, dword [ebp - 4]
sub eax, edx
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x1ac]
shl ecx, 1
mov edx, dword [ebp - 0x7f4]
sub edx, ecx
mov dword [ebp - 0x7f4], edx
mov dword [ebp - 0x1ac], 0
cmp dword [0x458ac0], 0
je 0x41987a
mov eax, dword [ebp - 0x7f4]
push eax
mov ecx, dword [ebp - 0x1a8]
push ecx
call fcn.0041b4f0
add esp, 8
xor edx, edx
jne 0x41985b
mov eax, dword [ebp - 4]
add eax, 8
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x808]
mov dword [ecx], edx
mov eax, dword [ebp - 0x804]
mov dword [ecx + 4], eax
mov ecx, dword [ebp - 0x1a4]
movzx edx, byte [ecx + 0x439d28]
mov dword [ebp - 0x1a4], edx
mov eax, dword [ebp - 0x1a4]
movsx ecx, word [eax*2 + 0x43a12a]
mov edx, dword [ebp - 0x7f4]
movsx eax, word [edx]
add ecx, eax
mov dword [ebp - 0xc], ecx
js 0x4198fd
cmp dword [ebp - 0xc], 0x458
jg 0x4198fd
mov ecx, dword [ebp - 0xc]
movsx edx, word [ecx*2 + 0x43ab10]
mov eax, dword [ebp - 0x7f4]
movsx ecx, word [eax]
cmp edx, ecx
jne 0x4198fd
mov edx, dword [ebp - 0xc]
movsx eax, word [edx*2 + 0x43a258]
mov dword [ebp - 0xc], eax
jmp 0x41990e
mov ecx, dword [ebp - 0x1a4]
movsx edx, word [ecx*2 + 0x439e92]
mov dword [ebp - 0xc], edx
jmp 0x416004
cmp dword [0x458b40], 0xfffffffe
jne 0x419928
mov dword [ebp - 0x8c4], 0xfffffffe
jmp 0x41995e
cmp dword [0x458b40], 0x150
ja 0x419948
mov eax, dword [0x458b40]
movzx ecx, byte [eax + 0x439380]
mov dword [ebp - 0x8c8], ecx
jmp 0x419952
mov dword [ebp - 0x8c8], 2
mov edx, dword [ebp - 0x8c8]
mov dword [ebp - 0x8c4], edx
mov eax, dword [ebp - 0x8c4]
mov dword [ebp - 0x1b0], eax
cmp dword [ebp - 0x7fc], 0
jne 0x41998f
mov ecx, dword [0x458abc]
add ecx, 1
mov dword [0x458abc], ecx
push str.syntax_error
call fcn.0041b6a0
add esp, 4
cmp dword [ebp - 0x7fc], 3
jne 0x4199d4
cmp dword [0x458b40], 0
jg 0x4199b1
cmp dword [0x458b40], 0
jne 0x4199af
jmp 0x419bbd
jmp 0x4199d4
push 0x458b48
mov edx, dword [ebp - 0x1b0]
push edx
push str.Error:_discarding
call fcn.0041b630
add esp, 0xc
mov dword [0x458b40], 0xfffffffe
jmp 0x419a3c
mov dword [ebp - 0x7fc], 3
mov ecx, dword [ebp - 0xc]
movsx edx, word [ecx*2 + 0x439fc0]
mov dword [ebp - 0x1a4], edx
cmp dword [ebp - 0x1a4], 0xffffff70
je 0x419ab2
mov eax, dword [ebp - 0x1a4]
add eax, 1
mov dword [ebp - 0x1a4], eax
js 0x419ab2
cmp dword [ebp - 0x1a4], 0x458
jg 0x419ab2
mov ecx, dword [ebp - 0x1a4]
movsx edx, word [ecx*2 + 0x43ab10]
cmp edx, 1
jne 0x419ab2
mov eax, dword [ebp - 0x1a4]
movsx ecx, word [eax*2 + 0x43a258]
mov dword [ebp - 0x1a4], ecx
cmp dword [ebp - 0x1a4], 0
jle 0x419ab2
jmp 0x419b2d
mov edx, dword [ebp - 0x7f4]
cmp edx, dword [ebp - 0x1a8]
jne 0x419ac5
jmp 0x419bbd
mov eax, dword [ebp - 4]
push eax
mov ecx, dword [ebp - 0xc]
movzx edx, byte [ecx + 0x43b3c8]
push edx
push str.Error:_popping
call fcn.0041b630
add esp, 0xc
mov eax, dword [ebp - 4]
sub eax, 8
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x7f4]
sub ecx, 2
mov dword [ebp - 0x7f4], ecx
mov edx, dword [ebp - 0x7f4]
movsx eax, word [edx]
mov dword [ebp - 0xc], eax
cmp dword [0x458ac0], 0
je 0x419b24
mov ecx, dword [ebp - 0x7f4]
push ecx
mov edx, dword [ebp - 0x1a8]
push edx
call fcn.0041b4f0
add esp, 8
xor eax, eax
jne 0x419b05
jmp 0x419a46
mov ecx, dword [ebp - 4]
add ecx, 8
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
mov eax, dword [0x458b48]
mov dword [edx], eax
mov ecx, dword [0x458b4c]
mov dword [edx + 4], ecx
cmp dword [0x458ac0], 0
je 0x419b9f
push str.Shifting
push 0x452904
mov edx, dword [0x453ed0]
push edx
call fcn.004220d0
add esp, 0xc
mov eax, dword [ebp - 4]
push eax
mov ecx, dword [ebp - 0x1a4]
movzx edx, byte [ecx + 0x43b3c8]
push edx
mov eax, dword [0x453ed0]
push eax
call fcn.0041b460
add esp, 0xc
push 0x452908
mov ecx, dword [0x453ed0]
push ecx
call fcn.004220d0
add esp, 8
xor edx, edx
jne 0x419b49
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0xc], eax
jmp 0x416004
mov dword [ebp - 0x7f8], 0
jmp 0x419be0
mov dword [ebp - 0x7f8], 1
jmp 0x419be0
push str.memory_exhausted
call fcn.0041b6a0
add esp, 4
mov dword [ebp - 0x7f8], 2
cmp dword [0x458b40], 0xfffffffe
je 0x419c39
cmp dword [0x458b40], 0x150
ja 0x419c0a
mov ecx, dword [0x458b40]
movzx edx, byte [ecx + 0x439380]
mov dword [ebp - 0x8cc], edx
jmp 0x419c14
mov dword [ebp - 0x8cc], 2
mov eax, dword [ebp - 0x8cc]
mov dword [ebp - 0x1b0], eax
push 0x458b48
mov ecx, dword [ebp - 0x1b0]
push ecx
push str.Cleanup:_discarding_lookahead
call fcn.0041b630
add esp, 0xc
mov edx, dword [ebp - 0x1ac]
shl edx, 3
mov eax, dword [ebp - 4]
sub eax, edx
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x1ac]
shl ecx, 1
mov edx, dword [ebp - 0x7f4]
sub edx, ecx
mov dword [ebp - 0x7f4], edx
cmp dword [0x458ac0], 0
je 0x419c7f
mov eax, dword [ebp - 0x7f4]
push eax
mov ecx, dword [ebp - 0x1a8]
push ecx
call fcn.0041b4f0
add esp, 8
xor edx, edx
jne 0x419c60
mov eax, dword [ebp - 0x7f4]
cmp eax, dword [ebp - 0x1a8]
je 0x419ccd
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp - 0x7f4]
movsx eax, word [edx]
movzx ecx, byte [eax + 0x43b3c8]
push ecx
push str.Cleanup:_popping
call fcn.0041b630
add esp, 0xc
mov edx, dword [ebp - 4]
sub edx, 8
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x7f4]
sub eax, 2
mov dword [ebp - 0x7f4], eax
jmp 0x419c83
mov ecx, dword [ebp - 0x1a8]
lea edx, [ebp - 0x1a0]
cmp ecx, edx
je 0x419ced
mov eax, dword [ebp - 0x1a8]
push eax
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
mov eax, dword [ebp - 0x7f8]
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0043618e
mov esp, ebp
pop ebp
ret