Function at 0x4423c0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd24
mov eax, dword [0x57c870]
xor eax, ebp
mov dword [ebp - 8], eax
push esi
mov dword [ebp - 0xaec], 0
mov dword [ebp - 0xafc], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0xaf8], 0
mov dword [ebp - 0x5a0], 1
mov dword [ebp - 0x7b4], 0
mov dword [ebp - 0x7c4], 0
mov dword [ebp - 0x15c], 0xffffffff
mov dword [ebp - 0x7c0], 0
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x7bc], 1
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x27c], 0
mov dword [ebp - 0xaf0], 0
mov dword [ebp - 0x7b8], 0
mov dword [ebp - 0x168], 1
mov dword [ebp - 0x164], 0
mov dword [ebp - 0x398], 0
mov dword [ebp - 0x9d8], 0
mov dword [ebp - 0x394], 0
mov dword [ebp - 0x284], 0
mov dword [ebp - 0x140], 0
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x7cc], 0xffffffff
mov byte [ebp - 0x9d0], 0
mov byte [0x5f42e0], 0
mov byte [0x5f43e0], 0
mov byte [0x5f44e0], 0
mov byte [0x5f45e0], 0
mov byte [0x5f46e0], 0
mov dword [0xeb1740], 0
mov dword [0x5f4284], 0
mov byte [0x1070ca0], 0
push 0
push 0x5f491c
push 0x5f4920
push 0x5f4924
call fcn.00431af0
add esp, 0x10
push 1
lea eax, [ebp - 0x398]
push eax
lea ecx, [ebp - 0x9d8]
push ecx
lea edx, [ebp - 0x394]
push edx
call fcn.00431af0
add esp, 0x10
mov eax, dword [ebp - 0x398]
mov dword [ebp - 0x10c], eax
mov ecx, dword [ebp - 0x9d8]
mov dword [ebp - 0x27c], ecx
mov edx, dword [ebp - 0x394]
mov dword [ebp - 0xaf0], edx
push 0x561a90
mov eax, dword [ebp + 0xc]
add eax, 9
push eax
call fcn.00532680
add esp, 8
test eax, eax
je 0x442584
mov dword [ebp - 0x7c4], 1
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.0045d0b0
add esp, 4
mov edx, dword [ebp + 0xc]
movsx eax, word [edx + 0x8e50]
mov dword [ebp - 0xae8], eax
cmp dword [ebp - 0xae8], 0
je 0x4425bb
mov ecx, dword [ebp + 0xc]
movsx edx, word [ecx + 0x8e52]
mov dword [0x5f42b0], edx
jmp 0x4425ce
mov eax, dword [0x5f42d0]
push eax
call fcn.004557e0
add esp, 4
mov dword [0x5f42b0], eax
push 4
mov ecx, dword [0x5c4c28]
imul ecx, ecx, 0x127c
add ecx, 0x11a6ec0
push ecx
call fcn.00460890
add esp, 8
movsx edx, ax
cmp edx, 1
jne 0x4425fd
mov dword [ebp - 0x168], 0
cmp dword [0x5f42b0], 0
je 0x4426c6
movsx eax, word [0x5f42d8]
cmp eax, 1
jne 0x4426c6
cmp dword [ebp - 0xae8], 0
jne 0x442655
lea ecx, [ebp - 0xb00]
push ecx
lea edx, [ebp - 0xb04]
push edx
push 0
mov eax, dword [0x5f42b0]
push eax
mov ecx, dword [0x5f42d0]
push ecx
push 0x5f4919
call fcn.00427490
add esp, 0x18
mov dword [ebp - 0x7b0], eax
jmp 0x442683
lea edx, [ebp - 0xb00]
push edx
lea eax, [ebp - 0xb04]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [0x5f42b0]
push edx
push 0
push 0x5f491a
call fcn.00427490
add esp, 0x18
mov dword [ebp - 0x7b0], eax
movsx eax, word [ebp - 0xb00]
cmp eax, 0xffffffff
je 0x4426c6
lea ecx, [ebp - 0x10c]
push ecx
lea edx, [ebp - 0x27c]
push edx
lea eax, [ebp - 0xaf0]
push eax
movsx ecx, word [ebp - 0xb00]
push ecx
call fcn.00434b50
add esp, 0x10
mov edx, dword [ebp - 0x10c]
add edx, 0x7bc
mov dword [ebp - 0x10c], edx
or eax, 0xffffffff
mov ecx, dword [ebp + 0xc]
mov word [ecx + 0x8bce], ax
or edx, 0xffffffff
mov eax, dword [ebp + 0xc]
mov word [eax + 0x8bde], dx
or ecx, 0xffffffff
mov edx, dword [ebp + 0xc]
mov word [edx + 0x8b26], cx
or eax, 0xffffffff
mov ecx, dword [ebp + 0xc]
mov word [ecx + 0x8b52], ax
or edx, 0xffffffff
mov eax, dword [ebp + 0xc]
mov word [eax + 0x8b54], dx
mov dword [ebp - 0x158], 0
jmp 0x442722
mov ecx, dword [ebp - 0x158]
add ecx, 1
mov dword [ebp - 0x158], ecx
cmp dword [ebp - 0x158], 0x2d
jge 0x442748
mov edx, dword [ebp - 0x158]
imul edx, edx, 0x23280
add edx, 0x746bc0
push edx
call fcn.00473280
add esp, 4
jmp 0x442713
push 0xc2
push 0
push 0xd74ca0
call fcn.005323e0
add esp, 0xc
mov dword [0x5f788c], 0
cmp dword [0x5fdb24], 1
jne 0x442774
jmp 0x44559a
push 0x561a94
push 0x5c5ed8
push 0x561aa4
lea eax, [ebp - 0x498]
push eax
call fcn.00532706
add esp, 0x10
mov byte [0xeae840], 0
mov ecx, dword [0x5f42b0]
mov dword [0x56149c], ecx
mov edx, dword [ebp + 0xc]
push edx
call fcn.004455b0
add esp, 4
mov eax, dword [0x5f42b0]
imul eax, eax, 3
add eax, 0xa
push eax
call fcn.00424350
add esp, 4
mov dword [0x5f4168], eax
mov ecx, dword [0x5f4168]
mov byte [ecx], 0
mov dword [ebp - 0x158], 0
jmp 0x4427ee
mov edx, dword [ebp - 0x158]
add edx, 1
mov dword [ebp - 0x158], edx
cmp dword [ebp - 0x158], 0x2d
jge 0x44280d
or eax, 0xffffffff
mov ecx, dword [ebp - 0x158]
mov edx, dword [ebp + 0xc]
mov word [edx + ecx*2 + 0x8a90], ax
jmp 0x4427df
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x8b72], 0
mov ecx, dword [ebp + 0xc]
mov byte [ecx + 0x8b8e], 0
mov edx, dword [ebp + 0xc]
mov byte [edx + 0x8b80], 0
or eax, 0xffffffff
mov ecx, dword [ebp + 0xc]
mov word [ecx + 0x8ba0], ax
or edx, 0xffffffff
mov eax, dword [ebp + 0xc]
mov word [eax + 0x8ba2], dx
or ecx, 0xffffffff
mov edx, dword [ebp + 0xc]
mov word [edx + 0x8ba4], cx
or eax, 0xffffffff
mov ecx, dword [ebp + 0xc]
mov word [ecx + 0x8ba6], ax
mov dword [0x5f42b4], 0
mov dword [0x5f42c4], 0
mov dword [0x5614a0], 0xffffffff
xor edx, edx
mov eax, dword [ebp + 0xc]
mov word [eax + 0x8b9c], dx
xor ecx, ecx
mov edx, dword [ebp + 0xc]
mov word [edx + 0x8b9e], cx
mov eax, dword [0x5f42b0]
push eax
call fcn.004397e0
add esp, 4
mov dword [ebp - 0x158], 1
jmp 0x4428be
mov ecx, dword [ebp - 0x158]
add ecx, 1
mov dword [ebp - 0x158], ecx
mov edx, dword [ebp - 0x158]
cmp edx, dword [0x5f42b0]
jg 0x442c19
cmp dword [0x5fdb24], 0
jne 0x442c19
cmp dword [ebp - 0xae8], 0
jne 0x442963
mov eax, dword [ebp - 0x158]
sub eax, 1
imul eax, eax, 0xc8
add eax, 4
mov dword [ebp - 0x288], eax
push 0
mov ecx, dword [ebp - 0x288]
push ecx
mov edx, dword [0x5f42d0]
push edx
call fcn.00532940
add esp, 0xc
mov eax, dword [0x5f42d0]
push eax
push 1
push 0xc8
push 0x10957e0
call fcn.0053367b
add esp, 0x10
push 0
push 1
push 0x10957e0
call fcn.0041aba0
add esp, 0xc
movsx ecx, word [0x10957e0]
cmp ecx, 0x76c
jl 0x442961
push 0
push 2
push 0x10957e0
call fcn.0041aba0
add esp, 0xc
jmp 0x44297e
push 0x10957e0
mov edx, dword [ebp - 0x158]
sub edx, 1
push edx
mov eax, dword [ebp + 0xc]
push eax
call fcn.0044ce30
add esp, 0xc
push 0x10957e0
call fcn.00441ea0
add esp, 4
mov dword [ebp - 0x7b0], eax
cmp dword [ebp - 0x7b0], 0
jne 0x44299f
jmp 0x4428af
push 0x10957e0
call fcn.00452680
add esp, 4
mov dword [ebp - 0x9d4], eax
mov ecx, dword [ebp - 0x158]
push ecx
push 0
push 0x10957e0
call fcn.00439a20
add esp, 0xc
movsx edx, word [0x1095810]
push edx
call fcn.0042db70
add esp, 4
cmp eax, 1
jne 0x442ae3
cmp dword [0x5fdb08], 0x1e
je 0x442ae3
push 0x10957e0
call fcn.004527d0
add esp, 4
cmp eax, 1
jne 0x442ae3
push 0x10957e0
call fcn.00454340
add esp, 4
cwde
mov dword [ebp - 0x7cc], eax
mov ecx, dword [ebp + 0xc]
movsx edx, word [ecx + 0x8bce]
cmp edx, 0xffffffff
jne 0x442a86
mov eax, dword [ebp + 0xc]
mov cx, word [ebp - 0x7cc]
mov word [eax + 0x8bce], cx
movsx edx, word [0x10957e0]
push edx
movsx eax, word [0x10957e2]
mov ecx, dword [eax*4 + 0x55fed8]
push ecx
movsx edx, word [0x10957e4]
push edx
push 0x561aac
lea eax, [ebp - 0xc08]
push eax
call fcn.00532706
add esp, 0x14
lea ecx, [ebp - 0xc08]
push ecx
mov edx, dword [ebp + 0xc]
add edx, 0x8bd0
push edx
call fcn.00532580
add esp, 8
jmp 0x442ae3
mov eax, dword [ebp + 0xc]
mov cx, word [ebp - 0x7cc]
mov word [eax + 0x8bde], cx
movsx edx, word [0x10957e0]
push edx
movsx eax, word [0x10957e2]
mov ecx, dword [eax*4 + 0x55fed8]
push ecx
movsx edx, word [0x10957e4]
push edx
push 0x561abc
lea eax, [ebp - 0xc08]
push eax
call fcn.00532706
add esp, 0x14
lea ecx, [ebp - 0xc08]
push ecx
mov edx, dword [ebp + 0xc]
add edx, 0x8be0
push edx
call fcn.00532580
add esp, 8
movsx eax, word [0x1095810]
push eax
call fcn.0042dba0
add esp, 4
cmp eax, 1
jne 0x442b6f
push 0x10957e0
call fcn.00452120
add esp, 4
mov dword [ebp - 0x7c0], eax
cmp dword [ebp - 0x7c0], 0
jne 0x442b6f
mov ecx, dword [0x5fdb08]
mov dword [ebp - 0xc10], ecx
movsx edx, word [0x10957ec]
cmp edx, 1
jne 0x442b38
mov dword [0x5fdb08], 0x62
jmp 0x442b44
movsx eax, word [0x1095810]
mov dword [0x5fdb08], eax
lea ecx, [ebp - 0xc14]
push ecx
lea edx, [ebp - 0xc0c]
push edx
mov eax, dword [ebp + 0xc]
push eax
push 0x10957e0
call fcn.00450940
add esp, 0x10
mov ecx, dword [ebp - 0xc10]
mov dword [0x5fdb08], ecx
movsx edx, word [0x10957e0]
cmp edx, 0x7bc
jle 0x442c14
movsx eax, word [0x10957e0]
cmp eax, 0x7e4
jge 0x442c14
push 0x10957e0
call fcn.00431bd0
add esp, 4
mov dword [ebp - 0x284], eax
mov ecx, dword [ebp - 0x284]
cmp ecx, dword [ebp - 0x140]
je 0x442bd9
mov edx, dword [ebp + 0xc]
mov ax, word [edx + 0x8b9e]
add ax, 1
mov ecx, dword [ebp + 0xc]
mov word [ecx + 0x8b9e], ax
mov edx, dword [ebp - 0x284]
mov dword [ebp - 0x140], edx
mov eax, dword [ebp - 0x284]
cmp eax, dword [ebp - 0x150]
je 0x442c14
cmp dword [ebp - 0x9d4], 1
jne 0x442c14
mov ecx, dword [ebp + 0xc]
mov dx, word [ecx + 0x8b9c]
add dx, 1
mov eax, dword [ebp + 0xc]
mov word [eax + 0x8b9c], dx
mov ecx, dword [ebp - 0x284]
mov dword [ebp - 0x150], ecx
jmp 0x4428af
call fcn.00439c60
mov dword [ebp - 0x158], 1
jmp 0x442c39
mov edx, dword [ebp - 0x158]
add edx, 1
mov dword [ebp - 0x158], edx
mov eax, dword [ebp - 0x158]
cmp eax, dword [0x5f42b0]
jg 0x445086
cmp dword [0x5fdb24], 0
jne 0x445086
cmp dword [ebp - 0xae8], 0
jne 0x442cbe
mov ecx, dword [ebp - 0x158]
sub ecx, 1
imul ecx, ecx, 0xc8
add ecx, 4
mov dword [ebp - 0x288], ecx
push 0
mov edx, dword [ebp - 0x288]
push edx
mov eax, dword [0x5f42d0]
push eax
call fcn.00532940
add esp, 0xc
mov ecx, dword [0x5f42d0]
push ecx
push 1
push 0xc8
push 0x10957e0
call fcn.0053367b
add esp, 0x10
push 0
push 1
push 0x10957e0
call fcn.0041aba0
add esp, 0xc
jmp 0x442cd9
push 0x10957e0
mov edx, dword [ebp - 0x158]
sub edx, 1
push edx
mov eax, dword [ebp + 0xc]
push eax
call fcn.0044ce30
add esp, 0xc
movsx ecx, word [0x10957e0]
cmp ecx, 0x76c
jge 0x442e90
movsx edx, word [0x10957e0]
cmp edx, 1
jne 0x442e0c
movsx eax, word [0x10957e4]
and eax, 0x7f
sub eax, 1
imul eax, eax, 0xc2
mov dword [ebp - 0x390], eax
movsx ecx, word [0x10957e2]
push ecx
call fcn.00460c80
add esp, 4
mov dword [ebp - 0x59c], eax
push 0xc2
push 0x10957e6
mov edx, dword [ebp - 0x59c]
imul edx, edx, 0x308
add edx, dword [ebp - 0x390]
mov eax, dword [ebp + 0xc]
lea ecx, [eax + edx + 0x228]
push ecx
call fcn.00533040
add esp, 0xc
movsx edx, word [0x10957e4]
and edx, 0x7f
cmp edx, 1
jne 0x442e0c
mov eax, dword [ebp - 0x59c]
mov ecx, dword [ebp + 0xc]
movsx edx, word [ecx + eax*2 + 0x8a90]
cmp edx, 0xffffffff
je 0x442df4
push str.calc_info_in_hist_file_twice_
push 1
call fcn.00436500
add esp, 8
cmp dword [0x5f6630], 0
jne 0x442df4
call fcn.004869f0
cmp eax, 1
jne 0x442df4
push 0x5f491b
push 0x5f4928
push 0x561aec
push str.About_to_fix_corrupted_records
call fcn.00422b80
add esp, 0x10
mov eax, dword [ebp + 0xc]
push eax
call fcn.0044a800
add esp, 4
push 0
push 0
push 0
push 0
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.0042b0f0
add esp, 0x18
mov dword [0x5fdb24], 1
jmp 0x44559a
mov eax, dword [ebp - 0x59c]
mov ecx, dword [ebp + 0xc]
mov dx, word [ebp - 0x158]
mov word [ecx + eax*2 + 0x8a90], dx
movsx eax, word [0x10957e0]
cmp eax, 6
jne 0x442e54
movsx ecx, word [0x10957e2]
cmp ecx, dword [0x5fdb08]
jne 0x442e54
movsx edx, word [0xd74ca0]
test edx, edx
jne 0x442e54
push 0xc8
push 0x10957e0
push 0xd74ca0
call fcn.00533040
add esp, 0xc
mov eax, dword [ebp - 0x158]
mov dword [0x5f788c], eax
mov dword [ebp - 0x14c], 0
mov dword [ebp - 0x174], 0
push 0x561b1c
mov ecx, dword [0x5f4168]
push ecx
call fcn.00532590
add esp, 8
mov dword [ebp - 0x13c], 1
jmp 0x442c2a
cmp dword [ebp - 0x7c4], 1
jne 0x442ead
push 0x10957e0
lea edx, [ebp - 0x15c]
push edx
call fcn.0042d900
add esp, 8
mov eax, dword [0x5f42a8]
add eax, 1
mov dword [0x5f42a8], eax
cmp dword [ebp - 0xae8], 0
jne 0x442ed4
push 0
push 2
push 0x10957e0
call fcn.0041aba0
add esp, 0xc
movsx ecx, word [0x10957ec]
mov dword [ebp - 0x14c], ecx
movsx edx, word [0x10957ee]
mov dword [ebp - 0x174], edx
movsx eax, word [0x1095810]
cmp eax, 0xf
jne 0x442f15
lea ecx, [ebp - 0x174]
push ecx
lea edx, [ebp - 0x14c]
push edx
push 0x10957e0
call fcn.0041c5a0
add esp, 0xc
movsx eax, word [0x1095810]
push eax
call fcn.00460c80
add esp, 4
mov dword [ebp - 0xaf4], eax
cmp dword [0x5fdb24], 1
jne 0x442f39
jmp 0x44559a
push 0x10957e0
call fcn.00441ea0
add esp, 4
mov dword [ebp - 0x7b0], eax
cmp dword [ebp - 0x7b0], 0
jne 0x442f78
push 0x561b20
mov ecx, dword [0x5f4168]
push ecx
call fcn.00532590
add esp, 8
mov dword [ebp - 0x13c], 1
jmp 0x442c2a
cmp dword [0x10957f0], 0xf0
jle 0x442f8e
mov dword [0x10957f0], 0xf0
cmp dword [ebp - 0x7bc], 0x5dc0
jle 0x442ff9
cmp dword [ebp - 0x16c], 0
jne 0x442ff9
mov dword [ebp - 0x16c], 1
cmp dword [ebp - 0x164], 0
je 0x442ff9
push 0x5614ac
push 0x561b24
lea edx, [ebp - 0x278]
push edx
call fcn.00532706
add esp, 0xc
mov eax, dword [ebp - 0x164]
push eax
push 0x5614ac
call fcn.00534f64
add esp, 8
mov ecx, dword [ebp - 0x164]
push ecx
lea edx, [ebp - 0x278]
push edx
call fcn.00534f64
add esp, 8
push 0x10957e0
call fcn.00452120
add esp, 4
mov dword [ebp - 0x7c0], eax
movsx eax, word [0x1095810]
push eax
call fcn.0042dba0
add esp, 4
cmp eax, 1
jne 0x443051
push 0x10957e0
call fcn.00452320
add esp, 4
test eax, eax
jne 0x443051
cmp dword [ebp - 0x7c0], 1
jne 0x443047
mov dword [0x5614a0], 1
jmp 0x443051
mov dword [0x5614a0], 0
movsx ecx, word [0x10957e0]
sub ecx, 0x7bc
shl ecx, 9
movsx edx, word [0x10957e2]
shl edx, 5
add ecx, edx
movsx eax, word [0x10957e4]
add ecx, eax
mov word [ebp - 0x138], cx
movsx ecx, word [0x5f42d8]
cmp ecx, 1
je 0x4430e6
movsx edx, word [ebp - 0x138]
movsx eax, word [0x5f42d4]
cmp edx, eax
jl 0x4430ad
movsx ecx, word [ebp - 0x138]
movsx edx, word [0x5614a8]
cmp ecx, edx
jle 0x4430e6
mov eax, dword [0x5fdb08]
push eax
call fcn.0042dba0
add esp, 4
cmp eax, 1
jne 0x4430f2
movsx ecx, word [0x1095810]
push ecx
call fcn.0042dba0
add esp, 4
cmp eax, 1
jne 0x4430f2
push 0x10957e0
call fcn.00452320
add esp, 4
test eax, eax
jne 0x4430f2
mov dword [ebp - 0x9d4], 1
jmp 0x4430fc
mov dword [ebp - 0x9d4], 0
movsx edx, word [0x1095810]
push edx
call fcn.0042db70
add esp, 4
cmp eax, 1
jne 0x44312e
mov eax, dword [0x5fdb08]
push eax
call fcn.0042db70
add esp, 4
cmp eax, 1
jne 0x44312e
mov dword [ebp - 0x9d4], 1
push 0x10957e0
call fcn.00452540
add esp, 4
cmp eax, 1
jne 0x44314a
mov dword [ebp - 0x9d4], 0
cmp dword [ebp - 0x9d4], 1
jne 0x443262
movsx ecx, word [0x1095810]
cmp ecx, 0x31
je 0x443262
movsx edx, word [0x1095810]
cmp edx, 0x1b
je 0x443262
push 0
movsx eax, word [0x10957ee]
push eax
movsx ecx, word [0x10957ec]
push ecx
movsx edx, word [0x1095810]
push edx
mov eax, dword [ebp + 0xc]
push eax
call fcn.0045b180
add esp, 0x14
test eax, eax
jne 0x443262
movsx ecx, word [0x10957ee]
push ecx
movsx edx, word [0x10957ec]
push edx
movsx eax, word [0x1095810]
push eax
mov ecx, dword [ebp + 0xc]
movsx edx, word [ecx + 0x176]
push edx
mov eax, dword [ebp + 0xc]
movsx ecx, word [eax + 0x178]
push ecx
push 0x63
push 0x63
call fcn.00432930
add esp, 0x1c
mov dword [ebp - 0xc18], eax
cmp dword [ebp - 0xc18], 0x46
jg 0x443262
mov edx, dword [ebp + 0xc]
movsx eax, word [edx + 0x178]
cmp dword [ebp - 0xc18], eax
jle 0x443262
cmp dword [0x561b3c], 1
jne 0x443251
mov ecx, dword [ebp - 0xc18]
push ecx
mov edx, dword [ebp + 0xc]
movsx eax, word [edx + 0x178]
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 9
push ecx
push str.Study_Level_was_wrong_for__s__old_d_new_d_
lea edx, [ebp - 0x278]
push edx
call fcn.00532706
add esp, 0x14
lea eax, [ebp - 0x278]
push eax
push 1
call fcn.00436500
add esp, 8
mov dword [0x561b3c], 0
mov ecx, dword [ebp + 0xc]
mov dx, word [ebp - 0xc18]
mov word [ecx + 0x8b60], dx
mov eax, dword [ebp - 0x9d4]
push eax
push 0x10957e0
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00452bd0
add esp, 0xc
movsx edx, word [0x1095810]
push edx
call fcn.0042dba0
add esp, 4
cmp eax, 1
jne 0x44332c
push 0x10957e0
call fcn.00452320
add esp, 4
test eax, eax
jne 0x44332c
movsx eax, word [0x1095810]
cmp eax, 0x39
je 0x44332c
push 0x10957e0
call fcn.00452540
add esp, 4
test eax, eax
jne 0x44332c
mov ecx, dword [ebp + 0xc]
push ecx
push 0x10957e0
call fcn.00451040
add esp, 8
test eax, eax
jne 0x44332c
movsx edx, word [0x10957e0]
push edx
movsx eax, word [0x10957e2]
mov ecx, dword [eax*4 + 0x55fed8]
push ecx
movsx edx, word [0x10957e4]
push edx
movsx eax, word [0x109581c]
mov dword [ebp - 0xd1c], eax
fild dword [ebp - 0xd1c]
fdiv qword [0x54b668]
sub esp, 8
fstp qword [esp]
push str._2.1f___02d__s__04d_
lea ecx, [ebp - 0x9d0]
push ecx
call fcn.00532706
add esp, 0x1c
mov dword [ebp - 0x13c], 0
mov edx, dword [ebp - 0x174]
movsx eax, byte [edx + str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ]
push eax
mov ecx, dword [ebp - 0x14c]
movsx edx, byte [ecx + str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ]
push edx
push 0x561b88
lea eax, [ebp - 0x278]
push eax
call fcn.00532706
add esp, 0x10
movsx ecx, word [0x10957e0]
cmp ecx, 0x76c
jl 0x44373e
push 0x10957e0
call fcn.00452540
add esp, 4
test eax, eax
jne 0x44373e
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1564
mov eax, dword [ebp - 0x14c]
imul eax, eax, 0x94
lea ecx, [edx + eax + 0x667080]
mov edx, dword [ebp - 0x174]
cmp dword [ecx + edx*4], 0
je 0x443472
mov eax, dword [ebp - 0x174]
sub eax, 1
push eax
mov ecx, dword [ebp - 0x14c]
sub ecx, 1
push ecx
movsx edx, word [0x1095810]
push edx
call fcn.00424280
add esp, 0xc
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0xaf0]
push eax
mov ecx, dword [ebp - 0x27c]
push ecx
mov edx, dword [ebp - 0x10c]
push edx
mov eax, dword [ebp - 0x9d4]
push eax
push 0x10957e0
push 0
mov ecx, dword [0xd88fdf]
imul ecx, ecx, 0x23280
add ecx, 0x746bc0
push ecx
call fcn.00473860
add esp, 0x1c
mov edx, dword [ebp - 0xaf0]
push edx
mov eax, dword [ebp - 0x27c]
push eax
mov ecx, dword [ebp - 0x10c]
push ecx
mov edx, dword [ebp - 0x9d4]
push edx
push 0x10957e0
mov eax, dword [ebp - 0x154]
push eax
movsx ecx, word [0x1095810]
imul ecx, ecx, 0x55
mov edx, dword [ecx + 0xd86f00]
imul edx, edx, 0x23280
add edx, 0x746bc0
push edx
call fcn.00473860
add esp, 0x1c
mov eax, dword [0x5f491c]
push eax
mov ecx, dword [0x5f4920]
push ecx
mov edx, dword [0x5f4924]
push edx
movsx eax, word [0x10957e0]
push eax
movsx ecx, word [0x10957e2]
push ecx
movsx edx, word [0x10957e4]
push edx
call fcn.00434ff0
add esp, 0x18
mov dword [ebp - 0x7b0], eax
cmp dword [ebp - 0x7b0], 0
jne 0x4434bf
mov dword [ebp - 0x7b0], 0xffffffff
cmp dword [ebp - 0x7b0], 0
jl 0x443538
cmp dword [ebp - 0x7b0], 0x5dc
jge 0x443538
mov eax, dword [ebp + 0xc]
movsx ecx, word [eax + 0x8ba2]
cmp dword [ebp - 0x7b0], ecx
jl 0x4434f5
mov edx, dword [ebp + 0xc]
movsx eax, word [edx + 0x8ba2]
cmp eax, 0xffffffff
jne 0x443506
mov ecx, dword [ebp + 0xc]
mov dx, word [ebp - 0x7b0]
mov word [ecx + 0x8ba2], dx
mov eax, dword [ebp + 0xc]
movsx ecx, word [eax + 0x8ba0]
cmp dword [ebp - 0x7b0], ecx
jl 0x443527
mov edx, dword [ebp + 0xc]
movsx eax, word [edx + 0x8ba0]
cmp eax, 0xffffffff
jne 0x443538
mov ecx, dword [ebp + 0xc]
mov dx, word [ebp - 0x7b0]
mov word [ecx + 0x8ba0], dx
mov eax, dword [0x5f491c]
push eax
mov ecx, dword [0x5f4920]
push ecx
mov edx, dword [0x5f4924]
push edx
movsx eax, word [0x10957e0]
push eax
movsx ecx, word [0x10957e2]
push ecx
movsx edx, word [0x10957e4]
push edx
call fcn.00434ff0
add esp, 0x18
mov dword [ebp - 0x7b0], eax
cmp dword [ebp - 0x7b0], 0
jne 0x443587
mov dword [ebp - 0x7b8], 1
jmp 0x443591
mov dword [ebp - 0x7b8], 0
cmp dword [ebp - 0x7b0], 0
jl 0x44373e
cmp dword [ebp - 0x7b0], 0x5dc
jge 0x44373e
mov eax, dword [ebp + 0xc]
movsx ecx, word [eax + 0x8ba6]
cmp dword [ebp - 0x7b0], ecx
jl 0x4435cf
mov edx, dword [ebp + 0xc]
movsx eax, word [edx + 0x8ba6]
cmp eax, 0xffffffff
jne 0x4435e0
mov ecx, dword [ebp + 0xc]
mov dx, word [ebp - 0x7b0]
mov word [ecx + 0x8ba6], dx
mov eax, dword [ebp + 0xc]
movsx ecx, word [eax + 0x8ba6]
cmp dword [ebp - 0x7b0], ecx
jl 0x443601
mov edx, dword [ebp + 0xc]
movsx eax, word [edx + 0x8ba6]
cmp eax, 0xffffffff
jne 0x443612
mov ecx, dword [ebp + 0xc]
mov dx, word [ebp - 0x7b0]
mov word [ecx + 0x8ba6], dx
cmp dword [ebp - 0x9d4], 1
jne 0x443695
movsx eax, word [0x10957e0]
push eax
movsx ecx, word [0x10957e2]
mov edx, dword [ecx*4 + 0x55fed8]
push edx
movsx eax, word [0x10957e4]
push eax
push 0x561b90
mov ecx, dword [ebp + 0xc]
add ecx, 0x8b72
push ecx
call fcn.00532706
add esp, 0x14
mov edx, dword [ebp + 0xc]
movsx eax, byte [edx + 0x8b8e]
test eax, eax
jne 0x443695
movsx ecx, word [0x10957e0]
push ecx
movsx edx, word [0x10957e2]
mov eax, dword [edx*4 + 0x55fed8]
push eax
movsx ecx, word [0x10957e4]
push ecx
push 0x561ba0
mov edx, dword [ebp + 0xc]
add edx, 0x8b8e
push edx
call fcn.00532706
add esp, 0x14
cmp dword [ebp - 0x9d4], 1
jne 0x44373e
movsx eax, word [0x1095810]
cmp eax, dword [0x5fdb08]
jne 0x4436bd
movsx ecx, word [0x1095810]
cmp ecx, 0x32
jne 0x443708
cmp dword [0x5fdb08], 0x63
je 0x443708
movsx edx, word [0x1095810]
cmp edx, 0x32
jne 0x4436e7
movsx eax, word [0x10957ec]
cmp eax, 1
jne 0x4436e7
cmp dword [0x5fdb08], 0x62
je 0x443708
movsx ecx, word [0x1095810]
cmp ecx, 0x32
jne 0x44373e
movsx edx, word [0x10957ec]
cmp edx, 2
jne 0x44373e
cmp dword [0x5fdb08], 0x32
jne 0x44373e
movsx eax, word [0x10957e0]
push eax
movsx ecx, word [0x10957e2]
mov edx, dword [ecx*4 + 0x55fed8]
push edx
movsx eax, word [0x10957e4]
push eax
push 0x561bb0
mov ecx, dword [ebp + 0xc]
add ecx, 0x8b80
push ecx
call fcn.00532706
add esp, 0x14
movsx edx, word [0x1095810]
push edx
call fcn.0042dba0
add esp, 4
test eax, eax
jne 0x44379f
cmp dword [ebp - 0x9d4], 0
je 0x44377c
movsx eax, word [0x1095810]
cmp eax, dword [0x5fdb08]
je 0x44379f
cmp dword [0x5fdb08], 0x63
je 0x44379f
cmp dword [0x563400], 0
jne 0x44379f
push 0x561bc0
mov ecx, dword [0x5f4168]
push ecx
call fcn.00532590
add esp, 8
mov dword [ebp - 0x13c], 1
jmp 0x442c2a
cmp dword [0x5fdb08], 0x62
jne 0x4437b6
movsx edx, word [0x1095810]
cmp edx, 0x32
jne 0x4437b6
jmp 0x443821
movsx eax, word [0x1095810]
cmp eax, dword [0x5fdb08]
jne 0x4437ce
cmp dword [0x5fdb08], 0x63
jne 0x443821
push 0x561bc4
mov ecx, dword [0x5f4168]
push ecx
call fcn.00532590
add esp, 8
mov dword [ebp - 0x13c], 1
movsx edx, word [0x10957e0]
cmp edx, 0x76c
jge 0x443800
jmp 0x442c2a
push 0x10957e0
call fcn.00441ea0
add esp, 4
mov dword [ebp - 0x7b0], eax
cmp dword [ebp - 0x7b0], 0
jne 0x443821
jmp 0x442c2a
cmp dword [ebp - 0x13c], 0
jne 0x443840
lea eax, [ebp - 0x278]
push eax
mov ecx, dword [0x5f4168]
push ecx
call fcn.00532590
add esp, 8
push 0x10957e0
call fcn.00441ea0
add esp, 4
mov dword [ebp - 0x7b0], eax
cmp dword [ebp - 0x7b0], 0
jne 0x443861
jmp 0x442c2a
push 0
push 0x10957e0
call fcn.004524d0
add esp, 8
cmp eax, 1
jne 0x443883
cmp dword [0x563448], 0
jne 0x443883
jmp 0x442c2a
cmp dword [ebp - 0x14c], 0
je 0x443895
cmp dword [ebp - 0x174], 0
jne 0x44389a
jmp 0x442c2a
push 1
push 0x10957e0
mov edx, dword [ebp + 8]
push edx
call fcn.00445980
add esp, 0xc
mov dword [ebp - 0xaec], eax
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1564
mov ecx, dword [ebp - 0x14c]
imul ecx, ecx, 0x94
lea edx, [eax + ecx + 0x667080]
mov eax, dword [ebp - 0x174]
cmp dword [edx + eax*4], 0
jne 0x4438e3
jmp 0x442c2a
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1564
mov edx, dword [ebp - 0x14c]
imul edx, edx, 0x94
lea eax, [ecx + edx + 0x667080]
mov ecx, dword [ebp - 0x174]
mov edx, dword [eax + ecx*4]
movsx eax, byte [edx + 0xb]
sub eax, 0x30
mov dword [ebp - 0x144], eax
jns 0x443924
mov dword [ebp - 0x144], 2
mov dword [ebp - 0x38c], 1
jmp 0x44393f
mov ecx, dword [ebp - 0x38c]
add ecx, 1
mov dword [ebp - 0x38c], ecx
cmp dword [ebp - 0x38c], 4
jg 0x44395b
mov edx, dword [ebp - 0x38c]
imul edx, edx, 0x32
mov byte [ebp + edx - 0x108], 0
jmp 0x443930
cmp dword [ebp - 0x144], 3
jne 0x4439aa
push 0x14
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1564
mov ecx, dword [ebp - 0x14c]
imul ecx, ecx, 0x94
lea edx, [eax + ecx + 0x667080]
mov eax, dword [ebp - 0x174]
mov ecx, dword [edx + eax*4]
push ecx
mov edx, dword [ebp - 0x144]
imul edx, edx, 0x32
lea eax, [ebp + edx - 0x108]
push eax
call fcn.004511a0
add esp, 0xc
jmp 0x4439ee
push 0xf
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1564
mov edx, dword [ebp - 0x14c]
imul edx, edx, 0x94
lea eax, [ecx + edx + 0x667080]
mov ecx, dword [ebp - 0x174]
mov edx, dword [eax + ecx*4]
push edx
mov eax, dword [ebp - 0x144]
imul eax, eax, 0x32
lea ecx, [ebp + eax - 0x108]
push ecx
call fcn.004511a0
add esp, 0xc
push 3
push 0x84
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1564
mov eax, dword [ebp - 0x14c]
imul eax, eax, 0x94
lea ecx, [edx + eax + 0x667080]
mov edx, dword [ebp - 0x174]
mov eax, dword [ecx + edx*4]
push eax
call fcn.00433b80
add esp, 0xc
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x174]
sub ecx, 1
push ecx
mov edx, dword [ebp - 0x14c]
sub edx, 1
push edx
movsx eax, word [0x1095810]
push eax
call fcn.00424280
add esp, 0xc
mov dword [ebp - 0x390], eax
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x7ac], 0
mov dword [ebp - 0x38c], 1
jmp 0x443a85
mov ecx, dword [ebp - 0x38c]
add ecx, 1
mov dword [ebp - 0x38c], ecx
mov edx, dword [ebp - 0xaf4]
mov eax, dword [ebp - 0x38c]
cmp eax, dword [edx*4 + 0xd86880]
jg 0x443b20
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x2580
mov edx, dword [ebp - 0x38c]
shl edx, 4
mov eax, dword [ecx + edx + 0xd898a0]
mov dword [ebp - 0x114], eax
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x2580
mov edx, dword [ebp - 0x38c]
shl edx, 4
mov eax, dword [ecx + edx + 0xd898a4]
mov dword [ebp - 0x7ac], eax
mov ecx, dword [ebp - 0x114]
cmp ecx, dword [ebp - 0x14c]
jne 0x443b1b
mov edx, dword [ebp - 0x7ac]
cmp edx, dword [ebp - 0x174]
jne 0x443b1b
mov eax, dword [ebp - 0x38c]
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x38c]
add ecx, 1
mov dword [ebp - 0x38c], ecx
jmp 0x443b20
jmp 0x443a76
mov edx, dword [ebp - 0x390]
mov dword [ebp - 0x38c], edx
jmp 0x443b3d
mov eax, dword [ebp - 0x38c]
sub eax, 1
mov dword [ebp - 0x38c], eax
cmp dword [ebp - 0x38c], 0
jle 0x443ccb
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x2580
mov edx, dword [ebp - 0x38c]
shl edx, 4
mov eax, dword [ecx + edx + 0xd898a0]
mov dword [ebp - 0x114], eax
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x2580
mov edx, dword [ebp - 0x38c]
shl edx, 4
mov eax, dword [ecx + edx + 0xd898a4]
mov dword [ebp - 0x7ac], eax
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1564
mov edx, dword [ebp - 0x114]
imul edx, edx, 0x94
lea eax, [ecx + edx + 0x667080]
mov ecx, dword [ebp - 0x7ac]
cmp dword [eax + ecx*4], 0
jne 0x443bbe
jmp 0x443b2e
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1564
mov eax, dword [ebp - 0x114]
imul eax, eax, 0x94
lea ecx, [edx + eax + 0x667080]
mov edx, dword [ebp - 0x7ac]
mov eax, dword [ecx + edx*4]
movsx ecx, byte [eax + 0xb]
sub ecx, 0x30
mov dword [ebp - 0x110], ecx
jns 0x443bff
mov dword [ebp - 0x110], 2
mov edx, dword [ebp - 0x144]
cmp edx, dword [ebp - 0x110]
jle 0x443cc6
mov eax, dword [ebp - 0x110]
mov dword [ebp - 0x144], eax
cmp dword [ebp - 0x144], 3
jne 0x443c6c
push 0x14
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1564
mov edx, dword [ebp - 0x114]
imul edx, edx, 0x94
lea eax, [ecx + edx + 0x667080]
mov ecx, dword [ebp - 0x7ac]
mov edx, dword [eax + ecx*4]
push edx
mov eax, dword [ebp - 0x144]
imul eax, eax, 0x32
lea ecx, [ebp + eax - 0x108]
push ecx
call fcn.004511a0
add esp, 0xc
jmp 0x443cb0
push 0xf
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1564
mov eax, dword [ebp - 0x114]
imul eax, eax, 0x94
lea ecx, [edx + eax + 0x667080]
mov edx, dword [ebp - 0x7ac]
mov eax, dword [ecx + edx*4]
push eax
mov ecx, dword [ebp - 0x144]
imul ecx, ecx, 0x32
lea edx, [ebp + ecx - 0x108]
push edx
call fcn.004511a0
add esp, 0xc
cmp dword [ebp - 0x144], 2
jne 0x443cbb
jmp 0x443ccb
cmp dword [ebp - 0x144], 1
jne 0x443cc6
jmp 0x443ccb
jmp 0x443b2e
movsx eax, byte [ebp - 0x40]
test eax, eax
je 0x443d21
lea ecx, [ebp - 0x72]
push ecx
call fcn.00532e80
add esp, 4
cmp eax, 0xf
jbe 0x443ce8
mov byte [ebp - 0x63], 0
lea edx, [ebp - 0x72]
push edx
push 3
call fcn.00433d40
add esp, 8
lea eax, [ebp - 0x40]
push eax
push 0x561bc8
lea ecx, [ebp - 0x278]
push ecx
call fcn.00532706
add esp, 0xc
lea edx, [ebp - 0x278]
push edx
lea eax, [ebp - 0x72]
push eax
call fcn.00532590
add esp, 8
mov ecx, dword [ebp - 0x14c]
cmp ecx, dword [ebp - 0x114]
je 0x443d41
cmp dword [ebp - 0x114], 0
je 0x443d41
cmp dword [ebp - 0x7ac], 0
jne 0x443d6e
push 0x14
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x94
mov eax, dword [ebp - 0x14c]
mov ecx, dword [edx + eax*4 + 0x70e500]
push ecx
lea edx, [ebp - 0x598]
push edx
call fcn.004511a0
add esp, 0xc
jmp 0x443d99
push 0x14
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x94
mov ecx, dword [ebp - 0x114]
mov edx, dword [eax + ecx*4 + 0x70e500]
push edx
lea eax, [ebp - 0x598]
push eax
call fcn.004511a0
add esp, 0xc
lea ecx, [ebp - 0x598]
push ecx
call fcn.00532e80
add esp, 4
cmp eax, 0xf
jbe 0x443db4
mov byte [ebp - 0x589], 0
movsx edx, word [0x10957e0]
push edx
push 0x561bd0
lea eax, [ebp - 0xae4]
push eax
call fcn.00532706
add esp, 0xc
movsx ecx, word [0x10957e0]
push ecx
movsx edx, word [0x10957e2]
push edx
movsx eax, word [0x10957e4]
push eax
push str._02d__02d__02d
lea ecx, [ebp - 0x278]
push ecx
call fcn.00532706
add esp, 0x14
cmp dword [ebp - 0x5a0], 1
jne 0x443e36
mov dword [ebp - 0x5a0], 0
lea edx, [ebp - 0x278]
push edx
lea eax, [ebp - 0x134]
push eax
call fcn.00532580
add esp, 8
mov dword [ebp - 0xafc], 0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x134]
push ecx
lea edx, [ebp - 0x278]
push edx
call fcn.005327a0
add esp, 8
test eax, eax
je 0x443f08
lea eax, [ebp - 0x278]
push eax
lea ecx, [ebp - 0x134]
push ecx
call fcn.00532580
add esp, 8
mov eax, dword [ebp - 0xafc]
cdq
mov ecx, 0x3c
idiv ecx
push edx
mov eax, dword [ebp - 0xafc]
cdq
mov ecx, 0x3c
idiv ecx
push eax
movsx edx, byte [0x55ff0c]
push edx
movsx eax, byte [0x55ff0c]
push eax
push str.Total_c_c_02d:_02d_r_n__r_n
lea ecx, [ebp - 0x278]
push ecx
call fcn.00532706
add esp, 0x18
mov edx, dword [ebp - 0x7bc]
add edx, 2
mov dword [ebp - 0x7bc], edx
push 0x249f0
push 0
push 0x1070de0
call fcn.005323e0
add esp, 0xc
cmp dword [ebp - 0x164], 0
je 0x443ef7
cmp dword [ebp - 0x16c], 0
jne 0x443ef7
mov eax, dword [ebp - 0x164]
push eax
lea ecx, [ebp - 0x278]
push ecx
call fcn.00534f64
add esp, 8
mov dword [ebp - 0xafc], 0
mov dword [ebp - 4], 0
lea edx, [ebp - 0x6a8]
push edx
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1564
mov ecx, dword [ebp - 0x14c]
imul ecx, ecx, 0x94
lea edx, [eax + ecx + 0x667080]
mov eax, dword [ebp - 0x174]
mov ecx, dword [edx + eax*4]
push ecx
call fcn.004523d0
add esp, 8
test eax, eax
jne 0x443f6d
mov edx, dword [ebp - 0xafc]
add edx, dword [0x10957f0]
mov dword [ebp - 0xafc], edx
mov eax, dword [ebp - 0xaf8]
add eax, dword [0x10957f0]
mov dword [ebp - 0xaf8], eax
jmp 0x444022
movsx ecx, word [0x10957f4]
cmp ecx, 0x438
jl 0x444022
movsx edx, word [0x1095800]
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1564
mov ecx, dword [ebp - 0x14c]
imul ecx, ecx, 0x94
lea eax, [eax + ecx + 0x667080]
mov ecx, dword [ebp - 0x174]
mov eax, dword [eax + ecx*4]
movsx ecx, byte [eax + 0xb2]
cmp edx, ecx
jg 0x443fee
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1564
mov eax, dword [ebp - 0x14c]
imul eax, eax, 0x94
lea ecx, [edx + eax + 0x667080]
mov edx, dword [ebp - 0x174]
mov eax, dword [ecx + edx*4]
movsx ecx, byte [eax + 0xb2]
cmp ecx, 0x2d
jne 0x444022
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1564
mov eax, dword [ebp - 0x14c]
imul eax, eax, 0x94
lea ecx, [edx + eax + 0x667080]
mov edx, dword [ebp - 0x174]
mov eax, dword [ecx + edx*4]
mov cl, byte [0x1095800]
mov byte [eax + 0xb2], cl
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
movsx eax, word [0x1095810]
imul eax, eax, 0x55
movsx ecx, byte [eax + 0xd86f10]
test ecx, ecx
jne 0x444065
lea edx, [ebp - 0x598]
push edx
movsx eax, word [0x1095810]
push eax
push str._03d:__s
lea ecx, [ebp - 0x7a8]
push ecx
call fcn.00532706
add esp, 0x10
jmp 0x444090
lea edx, [ebp - 0x598]
push edx
movsx eax, word [0x1095810]
imul eax, eax, 0x55
add eax, 0xd86f10
push eax
push 0x561c0c
lea ecx, [ebp - 0x7a8]
push ecx
call fcn.00532706
add esp, 0x10
lea edx, [ebp - 0xa4]
push edx
lea eax, [ebp - 0x388]
push eax
call fcn.00532580
add esp, 8
lea ecx, [ebp - 0x72]
push ecx
lea edx, [ebp - 0xad8]
push edx
call fcn.00532580
add esp, 8
lea eax, [ebp - 0x7a8]
push eax
call fcn.00532e80
add esp, 4
cmp eax, 0xf
jbe 0x4440d4
mov byte [ebp - 0x799], 0
lea ecx, [ebp - 0x6a8]
push ecx
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1564
mov eax, dword [ebp - 0x14c]
imul eax, eax, 0x94
lea ecx, [edx + eax + 0x667080]
mov edx, dword [ebp - 0x174]
mov eax, dword [ecx + edx*4]
push eax
call fcn.004523d0
add esp, 8
cmp eax, 1
jne 0x444148
movsx ecx, word [0x1095800]
test ecx, ecx
jle 0x444148
movsx edx, word [0x1095800]
push edx
push str.___d_
lea eax, [ebp - 0x388]
push eax
call fcn.00532e80
add esp, 4
lea ecx, [ebp + eax - 0x388]
push ecx
call fcn.00532706
add esp, 0xc
movsx edx, byte [0x55ff0c]
push edx
lea eax, [ebp - 0xad8]
push eax
movsx ecx, byte [0x55ff0c]
push ecx
lea edx, [ebp - 0x388]
push edx
movsx eax, byte [0x55ff0c]
push eax
lea ecx, [ebp - 0x7a8]
push ecx
movsx edx, byte [0x55ff0c]
push edx
mov eax, dword [0x10957f0]
cdq
mov ecx, 0x3c
idiv ecx
push edx
mov eax, dword [0x10957f0]
cdq
mov ecx, 0x3c
idiv ecx
push eax
movsx edx, byte [0x55ff0c]
push edx
push 0x10957e6
movsx eax, byte [0x55ff0c]
push eax
lea ecx, [ebp - 0xae2]
push ecx
movsx edx, word [0x10957e2]
mov eax, dword [edx*4 + 0x55fed8]
push eax
movsx ecx, word [0x10957e4]
push ecx
push str._02d__s__s_c_s_c_02d:_02d_c_s_c_s_c_s_c
lea edx, [ebp - 0x278]
push edx
call fcn.00532706
add esp, 0x44
movsx eax, word [0x1095810]
cmp eax, 0xf
je 0x444262
lea ecx, [ebp - 0x6a8]
push ecx
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1564
mov eax, dword [ebp - 0x14c]
imul eax, eax, 0x94
lea ecx, [edx + eax + 0x667080]
mov edx, dword [ebp - 0x174]
mov eax, dword [ecx + edx*4]
push eax
call fcn.00452360
add esp, 8
cmp eax, 1
jne 0x444262
lea ecx, [ebp - 0x6a8]
push ecx
movsx edx, word [0x1095810]
push edx
push 0x561c44
lea eax, [ebp - 0x8d0]
push eax
call fcn.00532706
add esp, 0x10
lea ecx, [ebp - 0x8d0]
push ecx
lea edx, [ebp - 0x278]
push edx
call fcn.00532590
add esp, 8
push 0x561c50
lea eax, [ebp - 0x278]
push eax
call fcn.00532590
add esp, 8
mov ecx, dword [ebp - 0x7bc]
add ecx, 1
mov dword [ebp - 0x7bc], ecx
cmp dword [ebp - 0x164], 0
je 0x4442ad
cmp dword [ebp - 0x16c], 0
jne 0x4442ad
mov edx, dword [ebp - 0x164]
push edx
lea eax, [ebp - 0x278]
push eax
call fcn.00534f64
add esp, 8
mov ecx, dword [ebp - 0x174]
sub ecx, 1
push ecx
mov edx, dword [ebp - 0x14c]
sub edx, 1
push edx
movsx eax, word [0x1095810]
push eax
call fcn.00424280
add esp, 0xc
mov dword [ebp - 0x154], eax
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1c20
mov edx, dword [ebp - 0x154]
imul edx, edx, 0xc
mov eax, dword [ecx + edx + 0xf8d300]
add eax, dword [0x10957f0]
mov ecx, dword [ebp - 0x154]
imul ecx, ecx, 0xc
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1c20
mov dword [edx + ecx + 0xf8d300], eax
cmp dword [ebp - 0x7b8], 1
jne 0x44435c
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1c20
mov ecx, dword [ebp - 0x154]
imul ecx, ecx, 0xc
mov edx, dword [eax + ecx + 0xeb1760]
add edx, dword [0x10957f0]
mov eax, dword [ebp - 0x154]
imul eax, eax, 0xc
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1c20
mov dword [ecx + eax + 0xeb1760], edx
cmp dword [ebp - 0x9d4], 1
jne 0x4443a8
push 0
push 0x10957e0
call fcn.004524d0
add esp, 8
test eax, eax
jne 0x4443a8
movsx edx, word [0x1095810]
cmp edx, dword [0x5fdb08]
je 0x444390
cmp dword [0x5fdb08], 0x63
jne 0x4443a8
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x8aea]
add ecx, dword [0x10957f0]
mov edx, dword [ebp + 0xc]
mov dword [edx + 0x8aea], ecx
movsx eax, word [0x1095810]
push eax
call fcn.0042db70
add esp, 4
test eax, eax
jne 0x4448e8
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1564
mov edx, dword [ebp - 0x14c]
imul edx, edx, 0x94
lea eax, [ecx + edx + 0x667080]
mov ecx, dword [ebp - 0x174]
cmp dword [eax + ecx*4], 0
je 0x44479f
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1564
mov eax, dword [ebp - 0x14c]
imul eax, eax, 0x94
lea ecx, [edx + eax + 0x667080]
mov edx, dword [ebp - 0x174]
mov eax, dword [ecx + edx*4]
movsx ecx, byte [eax + 0xa3]
cmp ecx, 0x54
jne 0x44479f
movsx edx, word [0x1095810]
cmp edx, dword [0x5fdb08]
jne 0x444763
push 0x10957e0
call fcn.00452210
add esp, 4
cmp eax, 1
jne 0x44445d
mov eax, dword [ebp - 0x7b0]
mov dword [ebp - 0x7b0], eax
jmp 0x444571
push 0x10957e0
call fcn.004525a0
add esp, 4
test eax, eax
jne 0x4444e2
mov ecx, dword [ebp - 0x174]
push ecx
mov edx, dword [ebp - 0x14c]
push edx
lea eax, [ebp - 0x278]
push eax
call fcn.00433cb0
add esp, 0xc
lea ecx, [ebp - 0x278]
push ecx
push 0x5f44e0
call fcn.00532680
add esp, 8
test eax, eax
jne 0x4444dd
push 0x5f44e0
call fcn.00532e80
add esp, 4
cmp eax, 0xf0
jae 0x4444dd
lea edx, [ebp - 0x278]
push edx
push 0x5f44e0
call fcn.00532590
add esp, 8
push 0x561c54
push 0x5f44e0
call fcn.00532590
add esp, 8
jmp 0x444571
mov eax, dword [ebp - 0x174]
push eax
mov ecx, dword [ebp - 0x14c]
push ecx
lea edx, [ebp - 0x278]
push edx
call fcn.00433cb0
add esp, 0xc
lea eax, [ebp - 0x278]
push eax
push 0x5f45e0
call fcn.00532680
add esp, 8
test eax, eax
jne 0x444551
push 0x5f45e0
call fcn.00532e80
add esp, 4
cmp eax, 0xf0
jae 0x444551
lea ecx, [ebp - 0x278]
push ecx
push 0x5f45e0
call fcn.00532590
add esp, 8
push 0x561c58
push 0x5f45e0
call fcn.00532590
add esp, 8
movsx edx, word [0x109581c]
cmp edx, 3
jne 0x444571
lea eax, [ebp - 0x278]
push eax
push 0x5f46e0
call fcn.00532580
add esp, 8
mov ecx, dword [ebp + 8]
movsx edx, word [ecx + 0x68]
cmp edx, 1
jne 0x444763
mov eax, dword [ebp + 8]
movsx ecx, word [eax + 0x66]
cmp ecx, 1
jne 0x444763
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1c20
mov eax, dword [ebp - 0x154]
imul eax, eax, 0xc
cmp dword [edx + eax + 0xf8d304], 0
jne 0x444763
movsx ecx, word [0x10957f4]
cmp ecx, 0x3e8
jl 0x444763
push 0x10957e0
call fcn.004525a0
add esp, 4
test eax, eax
jne 0x444763
movsx edx, word [0x10957f4]
sub edx, 0x3e8
cmp edx, 0x55
jge 0x444763
mov eax, dword [0x5f491c]
push eax
mov ecx, dword [0x5f4920]
push ecx
mov edx, dword [0x5f4924]
push edx
movsx eax, word [0x10957e0]
push eax
movsx ecx, word [0x10957e2]
push ecx
movsx edx, word [0x10957e4]
push edx
call fcn.00434ff0
add esp, 0x18
mov dword [ebp - 0x160], eax
mov eax, dword [ebp + 8]
movsx ecx, word [eax + 0x62]
test ecx, ecx
je 0x444763
mov edx, dword [ebp + 8]
movsx eax, word [edx + 0x62]
cmp dword [ebp - 0x160], eax
jl 0x4446be
mov ecx, dword [ebp - 0x174]
push ecx
mov edx, dword [ebp - 0x14c]
push edx
lea eax, [ebp - 0x278]
push eax
call fcn.00433cb0
add esp, 0xc
lea ecx, [ebp - 0x278]
push ecx
push 0x5f42e0
call fcn.00532680
add esp, 8
test eax, eax
jne 0x4446b9
push 0x5f42e0
call fcn.00532e80
add esp, 4
cmp eax, 0xf0
jae 0x4446b9
lea edx, [ebp - 0x278]
push edx
push 0x5f42e0
call fcn.00532590
add esp, 8
push 0x561c5c
push 0x5f42e0
call fcn.00532590
add esp, 8
jmp 0x444763
mov eax, dword [ebp - 0x174]
push eax
mov ecx, dword [ebp - 0x14c]
push ecx
lea edx, [ebp - 0x278]
push edx
call fcn.00433cb0
add esp, 0xc
lea eax, [ebp - 0x278]
push eax
push 0x5f43e0
call fcn.00532680
add esp, 8
test eax, eax
jne 0x444763
push 0x5f43e0
call fcn.00532e80
add esp, 4
cmp eax, 0xf0
jae 0x444763
lea ecx, [ebp - 0x278]
push ecx
push 0x5f43e0
call fcn.00532590
add esp, 8
mov edx, dword [ebp + 8]
movsx eax, word [edx + 0x62]
sub eax, dword [ebp - 0x160]
push eax
push 0x561c60
lea ecx, [ebp - 0x278]
push ecx
call fcn.00532706
add esp, 0xc
lea edx, [ebp - 0x278]
push edx
push 0x5f43e0
call fcn.00532590
add esp, 8
push 0x561c68
push 0x5f43e0
call fcn.00532590
add esp, 8
movsx eax, word [0x10957f4]
cmp eax, 0x3e8
jl 0x44479a
movsx ecx, word [0x10957f4]
sub ecx, 0x3e8
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1c20
mov eax, dword [ebp - 0x154]
imul eax, eax, 0xc
mov dword [edx + eax + 0xf8d308], ecx
jmp 0x4448e8
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1564
mov edx, dword [ebp - 0x14c]
imul edx, edx, 0x94
lea eax, [ecx + edx + 0x667080]
mov ecx, dword [ebp - 0x174]
cmp dword [eax + ecx*4], 0
je 0x444826
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1564
mov eax, dword [ebp - 0x14c]
imul eax, eax, 0x94
lea ecx, [edx + eax + 0x667080]
mov edx, dword [ebp - 0x174]
mov eax, dword [ecx + edx*4]
movsx ecx, byte [eax + 0xa3]
cmp ecx, 0x50
jne 0x444826
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1c20
mov eax, dword [ebp - 0x154]
imul eax, eax, 0xc
movsx ecx, word [0x109581c]
mov dword [edx + eax + 0xf8d308], ecx
jmp 0x4448e8
mov edx, dword [ebp - 0x154]
push edx
mov eax, dword [ebp - 0xaec]
push eax
call fcn.00442190
add esp, 8
mov dword [ebp - 0x7b0], eax
mov ecx, dword [ebp - 0x7b0]
cmp ecx, dword [ebp - 0xaec]
je 0x4448a1
mov edx, dword [ebp - 0x7b0]
mov dword [ebp - 0xaec], edx
cmp dword [0xeb1740], 0x3e8
jge 0x4448a1
mov eax, dword [0xeb1740]
add eax, 1
mov dword [0xeb1740], eax
movsx ecx, word [ebp - 0x158]
sub ecx, 1
mov edx, dword [0xeb1740]
mov word [edx*4 + 0x10958c0], cx
mov eax, dword [0xeb1740]
mov cx, word [ebp - 0x7b0]
mov word [eax*4 + 0x10958c2], cx
cmp dword [ebp - 0x7b8], 1
jne 0x4448e8
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1c20
mov eax, dword [ebp - 0x154]
imul eax, eax, 0xc
mov ecx, dword [edx + eax + 0xeb1768]
add ecx, dword [ebp - 0xaec]
mov edx, dword [ebp - 0x154]
imul edx, edx, 0xc
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1c20
mov dword [eax + edx + 0xeb1768], ecx
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1564
mov edx, dword [ebp - 0x14c]
imul edx, edx, 0x94
lea eax, [ecx + edx + 0x667080]
mov ecx, dword [ebp - 0x174]
cmp dword [eax + ecx*4], 0
je 0x444c7a
push 3
push 0x561c6c
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1564
mov eax, dword [ebp - 0x14c]
imul eax, eax, 0x94
lea ecx, [edx + eax + 0x667080]
mov edx, dword [ebp - 0x174]
mov eax, dword [ecx + edx*4]
add eax, 7
push eax
call fcn.00532db5
add esp, 0xc
test eax, eax
je 0x444c7a
lea ecx, [ebp - 0x170]
push ecx
lea edx, [ebp - 0x7c8]
push edx
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1564
mov ecx, dword [ebp - 0x14c]
imul ecx, ecx, 0x94
lea edx, [eax + ecx + 0x667080]
mov eax, dword [ebp - 0x174]
mov ecx, dword [edx + eax*4]
add ecx, 7
push ecx
call fcn.00424d30
add esp, 0xc
mov edx, dword [ebp - 0x170]
sub edx, 1
push edx
mov eax, dword [ebp - 0x7c8]
sub eax, 1
push eax
movsx ecx, word [0x1095810]
push ecx
call fcn.00424280
add esp, 0xc
mov dword [ebp - 0x148], eax
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1c20
mov eax, dword [ebp - 0x148]
imul eax, eax, 0xc
mov ecx, dword [edx + eax + 0xf8d300]
add ecx, dword [0x10957f0]
mov edx, dword [ebp - 0x148]
imul edx, edx, 0xc
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1c20
mov dword [eax + edx + 0xf8d300], ecx
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1564
mov edx, dword [ebp - 0x14c]
imul edx, edx, 0x94
lea eax, [ecx + edx + 0x667080]
mov ecx, dword [ebp - 0x174]
mov edx, dword [eax + ecx*4]
movsx eax, byte [edx + 0xa3]
cmp eax, 0x54
je 0x444aaa
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1564
mov edx, dword [ebp - 0x14c]
imul edx, edx, 0x94
lea eax, [ecx + edx + 0x667080]
mov ecx, dword [ebp - 0x174]
mov edx, dword [eax + ecx*4]
movsx eax, byte [edx + 0xa3]
cmp eax, 0x50
je 0x444aaa
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1c20
mov edx, dword [ebp - 0x148]
imul edx, edx, 0xc
mov eax, dword [ecx + edx + 0xf8d308]
add eax, dword [ebp - 0xaec]
mov ecx, dword [ebp - 0x148]
imul ecx, ecx, 0xc
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1c20
mov dword [edx + ecx + 0xf8d308], eax
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1564
mov ecx, dword [ebp - 0x7c8]
imul ecx, ecx, 0x94
lea edx, [eax + ecx + 0x667080]
mov eax, dword [ebp - 0x170]
cmp dword [edx + eax*4], 0
je 0x444c6e
push 3
push 0x561c70
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1564
mov edx, dword [ebp - 0x7c8]
imul edx, edx, 0x94
lea eax, [ecx + edx + 0x667080]
mov ecx, dword [ebp - 0x170]
mov edx, dword [eax + ecx*4]
add edx, 7
push edx
call fcn.00532db5
add esp, 0xc
test eax, eax
je 0x444c6e
lea eax, [ebp - 0x5a4]
push eax
lea ecx, [ebp - 0x280]
push ecx
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1564
mov eax, dword [ebp - 0x7c8]
imul eax, eax, 0x94
lea ecx, [edx + eax + 0x667080]
mov edx, dword [ebp - 0x170]
mov eax, dword [ecx + edx*4]
add eax, 7
push eax
call fcn.00424d30
add esp, 0xc
mov ecx, dword [ebp - 0x5a4]
sub ecx, 1
push ecx
mov edx, dword [ebp - 0x280]
sub edx, 1
push edx
movsx eax, word [0x1095810]
push eax
call fcn.00424280
add esp, 0xc
mov dword [ebp - 0x118], eax
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1c20
mov edx, dword [ebp - 0x118]
imul edx, edx, 0xc
mov eax, dword [ecx + edx + 0xf8d300]
add eax, dword [0x10957f0]
mov ecx, dword [ebp - 0x118]
imul ecx, ecx, 0xc
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1c20
mov dword [edx + ecx + 0xf8d300], eax
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1564
mov ecx, dword [ebp - 0x7c8]
imul ecx, ecx, 0x94
lea edx, [eax + ecx + 0x667080]
mov eax, dword [ebp - 0x170]
mov ecx, dword [edx + eax*4]
movsx edx, byte [ecx + 0xa3]
cmp edx, 0x54
je 0x444c6c
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1564
mov ecx, dword [ebp - 0x7c8]
imul ecx, ecx, 0x94
lea edx, [eax + ecx + 0x667080]
mov eax, dword [ebp - 0x170]
mov ecx, dword [edx + eax*4]
movsx edx, byte [ecx + 0xa3]
cmp edx, 0x50
je 0x444c6c
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1c20
mov ecx, dword [ebp - 0x118]
imul ecx, ecx, 0xc
mov edx, dword [eax + ecx + 0xf8d308]
add edx, dword [ebp - 0xaec]
mov eax, dword [ebp - 0x118]
imul eax, eax, 0xc
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1c20
mov dword [ecx + eax + 0xf8d308], edx
jmp 0x444c78
mov dword [ebp - 0x118], 0
jmp 0x444c8e
mov dword [ebp - 0x148], 0
mov dword [ebp - 0x118], 0
cmp dword [ebp - 0x14c], 0
je 0x444faf
cmp dword [ebp - 0x174], 0
je 0x444faf
push 0x10957e0
call fcn.0043d6d0
add esp, 4
push 0x10957e6
movsx edx, word [0x10957e0]
push edx
movsx eax, word [0x10957e2]
push eax
movsx ecx, word [0x10957e4]
push ecx
push 0x561c74
lea edx, [ebp - 0x278]
push edx
call fcn.00532706
add esp, 0x18
push 0x10957e0
call fcn.004525a0
add esp, 4
mov dword [ebp - 0x7b0], eax
cmp dword [ebp - 0x7b0], 1
jne 0x444e21
cmp dword [0x5fdb08], 0xa
jne 0x444e21
movsx eax, word [0x10957f4]
cmp eax, 0x43d
jge 0x444d32
xor ecx, ecx
mov edx, dword [ebp + 0xc]
mov word [edx + 0x8b56], cx
jmp 0x444e21
movsx eax, word [0x10957ee]
cmp eax, 2
jne 0x444d52
mov ecx, 5
mov edx, dword [ebp + 0xc]
mov word [edx + 0x8b56], cx
jmp 0x444e21
movsx eax, word [0x10957ee]
cmp eax, 6
jne 0x444d72
mov ecx, 0xa
mov edx, dword [ebp + 0xc]
mov word [edx + 0x8b56], cx
jmp 0x444e21
movsx eax, word [0x10957ee]
cmp eax, 8
jne 0x444d92
mov ecx, 0xf
mov edx, dword [ebp + 0xc]
mov word [edx + 0x8b56], cx
jmp 0x444e21
movsx eax, word [0x10957ee]
cmp eax, 0xc
jne 0x444daf
mov ecx, 0xa
mov edx, dword [ebp + 0xc]
mov word [edx + 0x8b56], cx
jmp 0x444e21
movsx eax, word [0x10957ee]
cmp eax, 0x10
jne 0x444dcc
mov ecx, 0x16
mov edx, dword [ebp + 0xc]
mov word [edx + 0x8b56], cx
jmp 0x444e21
movsx eax, word [0x10957ee]
cmp eax, 0x13
jne 0x444de9
mov ecx, 0x19
mov edx, dword [ebp + 0xc]
mov word [edx + 0x8b56], cx
jmp 0x444e21
movsx eax, word [0x10957ee]
cmp eax, 0x16
jne 0x444e06
mov ecx, 0x1b
mov edx, dword [ebp + 0xc]
mov word [edx + 0x8b56], cx
jmp 0x444e21
movsx eax, word [0x10957ee]
cmp eax, 0x18
jne 0x444e21
mov ecx, 0x1e
mov edx, dword [ebp + 0xc]
mov word [edx + 0x8b56], cx
lea eax, [ebp - 0x278]
push eax
mov ecx, dword [ebp - 0x154]
imul ecx, ecx, 0x14
add ecx, 0xeae860
push ecx
call fcn.005327a0
add esp, 8
test eax, eax
je 0x444faf
cmp dword [ebp - 0x7b0], 0
jne 0x444faf
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1c20
mov eax, dword [ebp - 0x154]
imul eax, eax, 0xc
mov ecx, dword [edx + eax + 0xf8d304]
add ecx, 1
mov edx, dword [ebp - 0x154]
imul edx, edx, 0xc
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1c20
mov dword [eax + edx + 0xf8d304], ecx
cmp dword [ebp - 0x7b8], 1
jne 0x444ed4
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1c20
mov edx, dword [ebp - 0x154]
imul edx, edx, 0xc
mov eax, dword [ecx + edx + 0xeb1764]
add eax, 1
mov ecx, dword [ebp - 0x154]
imul ecx, ecx, 0xc
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1c20
mov dword [edx + ecx + 0xeb1764], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x8af6]
add ecx, 1
mov edx, dword [ebp + 0xc]
mov dword [edx + 0x8af6], ecx
cmp dword [ebp - 0x148], 0
je 0x444f2d
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1c20
mov ecx, dword [ebp - 0x148]
imul ecx, ecx, 0xc
mov edx, dword [eax + ecx + 0xf8d304]
add edx, 1
mov eax, dword [ebp - 0x148]
imul eax, eax, 0xc
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x1c20
mov dword [ecx + eax + 0xf8d304], edx
cmp dword [ebp - 0x118], 0
je 0x444f71
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1c20
mov eax, dword [ebp - 0x118]
imul eax, eax, 0xc
mov ecx, dword [edx + eax + 0xf8d304]
add ecx, 1
mov edx, dword [ebp - 0x118]
imul edx, edx, 0xc
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x1c20
mov dword [eax + edx + 0xf8d304], ecx
lea ecx, [ebp - 0x278]
push ecx
mov edx, dword [ebp - 0x154]
imul edx, edx, 0x14
add edx, 0xeae860
push edx
call fcn.00532580
add esp, 8
movsx eax, byte [0xeae840]
test eax, eax
jne 0x444faf
lea ecx, [ebp - 0x278]
push ecx
push 0xeae840
call fcn.00532580
add esp, 8
mov edx, dword [ebp - 0xaf4]
imul edx, edx, 0x1c20
mov eax, dword [ebp - 0x154]
imul eax, eax, 0xc
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x12c8
mov esi, dword [ebp - 0x154]
mov dx, word [edx + eax + 0xf8d300]
mov word [ecx + esi*8 + 0x110b480], dx
push 0x10957e0
call fcn.004525a0
add esp, 4
test eax, eax
je 0x445005
movsx eax, word [0x10957f4]
cmp eax, 0x43d
jl 0x445025
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x12c8
mov edx, dword [ebp - 0x154]
mov ax, word [0x10957f4]
mov word [ecx + edx*8 + 0x110b482], ax
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x12c8
mov edx, dword [ebp - 0x154]
mov al, byte [0x10957f6]
mov byte [ecx + edx*8 + 0x110b486], al
movsx ecx, word [0x1095810]
cmp ecx, dword [0x5fdb08]
jne 0x445061
mov edx, dword [0x5f42b4]
add edx, 1
mov dword [0x5f42b4], edx
cmp dword [0x5f42b4], 0x1bbc
jle 0x445081
cmp dword [0x5f42c4], 0
jne 0x445081
mov eax, dword [ebp - 0x158]
mov dword [0x5f42c4], eax
jmp 0x442c2a
lea ecx, [ebp - 0x278]
push ecx
push str.MSG_Text_Last_PT
push 0
call fcn.0046d1b0
add esp, 0xc
lea edx, [ebp - 0x9d0]
push edx
lea eax, [ebp - 0x278]
push eax
push 0x561c9c
push 0x5f4068
call fcn.00532706
add esp, 0x10
cmp dword [ebp - 0x7cc], 0xffffffff
je 0x4450ff
fild dword [ebp - 0x7cc]
fdiv qword [0x54b668]
sub esp, 8
fstp qword [esp]
push str.____Speaking_Test:__2.1f
lea ecx, [ebp - 0x278]
push ecx
call fcn.00532706
add esp, 0x10
lea edx, [ebp - 0x278]
push edx
push 0x5f4068
call fcn.00532590
add esp, 8
push 8
mov eax, dword [ebp + 8]
push eax
call fcn.00460890
add esp, 8
movsx ecx, ax
cmp ecx, 1
jne 0x445208
mov dl, byte [0x5f492a]
mov byte [ebp - 0xd18], dl
push 0xfe
push 0
lea eax, [ebp - 0xd17]
push eax
call fcn.005323e0
add esp, 0xc
lea ecx, [ebp - 0x278]
push ecx
push 0x561cc0
push 0
call fcn.0046d1b0
add esp, 0xc
mov edx, dword [ebp + 0xc]
movsx eax, word [edx + 0x178]
test eax, eax
jle 0x44519e
mov ecx, dword [ebp + 0xc]
movsx edx, word [ecx + 0x178]
mov dword [ebp - 0xd20], edx
fild dword [ebp - 0xd20]
fdiv qword [0x54b668]
sub esp, 8
fstp qword [esp]
lea eax, [ebp - 0x278]
push eax
push 0x561cd8
lea ecx, [ebp - 0xd18]
push ecx
call fcn.00532706
add esp, 0x14
jmp 0x4451e9
mov edx, dword [ebp + 0xc]
movsx eax, word [edx + 0x176]
test eax, eax
jle 0x4451e9
mov ecx, dword [ebp + 0xc]
movsx edx, word [ecx + 0x176]
mov dword [ebp - 0xd24], edx
fild dword [ebp - 0xd24]
fdiv qword [0x54b668]
sub esp, 8
fstp qword [esp]
lea eax, [ebp - 0x278]
push eax
push str._____s:__1.1f
lea ecx, [ebp - 0xd18]
push ecx
call fcn.00532706
add esp, 0x14
movsx edx, byte [ebp - 0xd18]
test edx, edx
je 0x445208
lea eax, [ebp - 0xd18]
push eax
push 0x5f4068
call fcn.00532590
add esp, 8
mov eax, dword [ebp - 0xafc]
cdq
mov ecx, 0x3c
idiv ecx
push edx
mov eax, dword [ebp - 0xafc]
cdq
mov ecx, 0x3c
idiv ecx
push eax
movsx edx, byte [0x55ff0c]
push edx
movsx eax, byte [0x55ff0c]
push eax
push str.Total_c_c_02d:_02d_r_n
lea ecx, [ebp - 0x278]
push ecx
call fcn.00532706
add esp, 0x18
mov edx, dword [ebp - 0x7bc]
add edx, 1
mov dword [ebp - 0x7bc], edx
cmp dword [ebp - 0x164], 0
je 0x445398
cmp dword [ebp - 0x16c], 0
jne 0x445285
mov eax, dword [ebp - 0x164]
push eax
lea ecx, [ebp - 0x278]
push ecx
call fcn.00534f64
add esp, 8
cmp dword [ebp - 0x7b4], 0
je 0x44532d
mov eax, dword [ebp - 0x7b4]
cdq
mov ecx, 0x3c
idiv ecx
push edx
mov eax, dword [ebp - 0x7b4]
cdq
mov ecx, 0x3c
idiv ecx
push eax
movsx edx, byte [0x55ff0c]
push edx
movsx eax, byte [0x55ff0c]
push eax
mov eax, dword [ebp - 0xaf8]
cdq
mov ecx, 0x3c
idiv ecx
push edx
mov eax, dword [ebp - 0xaf8]
cdq
mov ecx, 0x3c
idiv ecx
push eax
movsx edx, byte [0x55ff0c]
push edx
movsx eax, byte [0x55ff0c]
push eax
push str.Grand_Total_c_c_02d:_02d_r_nPeriod_Total_c_c_02d:_02d_r_n
lea ecx, [ebp - 0x278]
push ecx
call fcn.00532706
add esp, 0x28
push 0
push 0
mov edx, dword [ebp - 0x164]
push edx
call fcn.00532940
add esp, 0xc
mov eax, dword [ebp - 0x164]
push eax
lea ecx, [ebp - 0x278]
push ecx
call fcn.00534f64
add esp, 8
jmp 0x44536f
mov eax, dword [ebp - 0xaf8]
cdq
mov ecx, 0x3c
idiv ecx
push edx
mov eax, dword [ebp - 0xaf8]
cdq
mov ecx, 0x3c
idiv ecx
push eax
movsx edx, byte [0x55ff0c]
push edx
movsx eax, byte [0x55ff0c]
push eax
push str.Grand_Total_c_c_02d:_02d_r_n
lea ecx, [ebp - 0x278]
push ecx
call fcn.00532706
add esp, 0x18
push 0
push 0
mov edx, dword [ebp - 0x164]
push edx
call fcn.00532940
add esp, 0xc
mov eax, dword [ebp - 0x164]
push eax
lea ecx, [ebp - 0x278]
push ecx
call fcn.00534f64
add esp, 8
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0xaf8]
mov dword [edx + 0x8aee], eax
mov ecx, dword [0x5fdb08]
push ecx
call fcn.00460c80
add esp, 4
mov dword [ebp - 0x59c], eax
mov edx, dword [ebp - 0x59c]
mov eax, dword [ebp + 0xc]
movsx ecx, word [eax + edx*2 + 0x8a90]
cmp ecx, 0xffffffff
jne 0x44547a
cmp dword [0x5fdb08], 0x63
je 0x44547a
mov edx, dword [ebp + 0xc]
movsx eax, word [edx + 0x8e54]
test eax, eax
jne 0x44547a
mov ecx, dword [ebp + 0xc]
movsx edx, word [ecx + 0x8e50]
test edx, edx
jne 0x445450
mov eax, dword [ebp + 0xc]
push eax
call fcn.0044a800
add esp, 4
mov ecx, dword [0x5fdb08]
push ecx
mov edx, dword [ebp + 0xc]
push edx
call fcn.0045baf0
add esp, 8
mov eax, dword [0x5fdb08]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.0045c780
add esp, 0xc
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.0044a6b0
add esp, 8
mov dword [ebp - 0x7b0], eax
jmp 0x44547a
mov edx, dword [0x5fdb08]
push edx
mov eax, dword [ebp + 0xc]
push eax
call fcn.0045baf0
add esp, 8
mov ecx, dword [0x5fdb08]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.0045c780
add esp, 0xc
cmp dword [0x5fd3c0], 0
jne 0x4454a1
push 0
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.0043db50
add esp, 8
mov edx, dword [ebp + 0xc]
push edx
push 0
push 1
call fcn.0043f630
add esp, 0xc
cmp dword [ebp - 0x164], 0
je 0x4454b9
mov eax, dword [ebp - 0x164]
push eax
call fcn.00431d50
add esp, 4
mov dword [ebp - 0x158], 0
jmp 0x4454d4
mov ecx, dword [ebp - 0x158]
add ecx, 1
mov dword [ebp - 0x158], ecx
cmp dword [ebp - 0x158], 0x7d
jge 0x445529
cmp dword [ebp - 0x158], 0xf
jne 0x4454e8
jmp 0x4454c5
mov edx, dword [ebp - 0x158]
push edx
call fcn.00460c80
add esp, 4
mov dword [ebp - 0xaf4], eax
cmp dword [ebp - 0xaf4], 0
je 0x445527
mov eax, dword [ebp - 0xaf4]
imul eax, eax, 0x23280
add eax, 0x746bc0
push eax
mov ecx, dword [ebp - 0x158]
push ecx
call fcn.00451220
add esp, 8
jmp 0x4454c5
mov dword [ebp - 0x158], 0
jmp 0x445544
mov edx, dword [ebp - 0x158]
add edx, 1
mov dword [ebp - 0x158], edx
cmp dword [ebp - 0x158], 0x7d
jge 0x44559a
cmp dword [ebp - 0x158], 0xf
jne 0x445558
jmp 0x445535
mov eax, dword [ebp - 0x158]
push eax
call fcn.00460c80
add esp, 4
mov dword [ebp - 0xaf4], eax
cmp dword [ebp - 0xaf4], 0
je 0x445598
mov ecx, dword [ebp - 0xaf4]
imul ecx, ecx, 0x23280
add ecx, 0x746bc0
push ecx
mov edx, dword [ebp - 0x158]
push edx
call fcn.00451e00
add esp, 8
jmp 0x445535
pop esi
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.00532783
mov esp, ebp
pop ebp
ret