Function at 0x473b20
Capabilities:
Encode data using base64
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x90
mov ecx, dword [ebp + 0xc]
xor eax, eax
push ebx
push esi
mov dword [ebp - 0x80], eax
mov ebx, ecx
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x5c], eax
push edi
mov edi, dword [ebp + 0x14]
shr ebx, 2
and ebx, 1
mov dword [ebp - 4], 0
mov dword [ebp - 0x68], ebx
mov eax, dword [edi + 0x80]
mov edx, dword [edi + 0x7c]
mov ebx, dword [edi + 0x20]
mov dword [ebp - 0x78], eax
xor eax, eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x70], eax
mov eax, dword [edi]
mov dword [ebp + 0xc], edx
mov dword [ebp - 0x20], 0
mov dword [ebp - 8], ebx
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x58], eax
xor eax, eax
mov esi, dword [ebp - 0x58]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x64], eax
mov eax, ecx
shr eax, 0x13
and eax, 1
mov dword [ebp - 0x6c], 0
and esi, 8
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x90], esi
je 0x473bb7
mov dword [edx], 0x80090000
jmp 0x473bc3
test byte [ebp - 0x58], 4
je 0x473bd0
mov dword [edx], 0x80180005
mov dword [edx + 4], 0x801a0000
add edx, 8
mov dword [ebp + 0xc], edx
test ecx, 0x2000000
je 0x473dc9
mov esi, dword [ebp + 8]
cmp esi, ebx
jae 0x473d58
cmp edx, dword [ebp - 0x78]
jae 0x47666a
movzx edx, byte [esi]
mov edi, esi
mov dword [ebp - 0x6c], edi
lea esi, [edi + 1]
test eax, eax
je 0x473cd5
cmp edx, 0xc0
jb 0x473cd5
test dl, 0x20
jne 0x473c28
movzx eax, byte [esi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
inc esi
jmp 0x473cd5
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x473c4f
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x473cd5
test dl, 8
jne 0x473c72
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x473cd5
test dl, 4
jne 0x473ca1
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x473cd5
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
cmp dword [ebp - 0x68], 0
je 0x473d3f
mov ecx, dword [ebp + 0x14]
mov eax, dword [ebp - 0x40]
add ecx, 0x1c
mov ebx, dword [ebp + 0xc]
mov dword [ebp - 0x40], eax
test eax, eax
je 0x473d13
mov eax, edi
mov edi, dword [ebp - 0x40]
sub eax, dword [edi + 4]
sub eax, dword [ecx]
mov dword [edi + 8], eax
mov eax, ebx
add eax, 0xfffffff0
cmp edi, eax
mov edi, dword [ebp - 0x6c]
jne 0x473d13
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0xc], 0xff
je 0x473d30
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x40], eax
lea ebx, [eax + 0x10]
mov dword [eax], 0x80060000
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0xff
sub edi, dword [ecx]
mov dword [eax + 4], edi
mov eax, ebx
mov ebx, dword [ebp - 8]
mov dword [ebp + 0xc], eax
jmp 0x473d42
mov eax, dword [ebp + 0xc]
mov dword [eax], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x38]
add edx, 4
mov dword [ebp + 0xc], edx
cmp esi, ebx
jb 0x473be7
mov edi, dword [ebp - 0x40]
mov ecx, edx
mov ebx, dword [ebp + 0x14]
test edi, edi
je 0x473d6f
mov eax, esi
sub eax, dword [edi + 4]
sub eax, dword [ebx + 0x1c]
mov dword [edi + 8], eax
cmp dword [ebp - 0x68], 0
je 0x473daa
test edi, edi
je 0x473d89
lea eax, [edx - 0x10]
cmp edi, eax
jne 0x473d89
cmp dword [edi + 0xc], 0xff
je 0x473da2
mov edi, edx
mov dword [edx], 0x80060000
lea ecx, [edx + 0x10]
mov dword [edx + 8], 0
mov dword [edx + 0xc], 0xff
mov eax, esi
sub eax, dword [ebx + 0x1c]
mov dword [edi + 4], eax
cmp dword [ebp - 0x90], 0
je 0x47664f
mov dword [ecx], 0x80190000
mov dword [ecx + 4], 0x80160000
jmp 0x476662
mov esi, dword [edi + 0x28]
xor edx, edx
mov eax, esi
mov dword [ebp - 0x18], 0xc
div dword [ebp - 0x18]
mov dword [ebp - 0x24], 0
sub esi, edx
mov edx, ecx
add esi, dword [edi + 0x14]
or edx, 0x80
test ecx, 0x1000000
mov dword [ebp - 0x74], esi
mov esi, dword [ebp + 8]
cmove edx, ecx
xor ecx, ecx
mov dword [ebp - 0x1c], edx
mov edx, dword [ebp + 0xc]
jmp 0x473e10
mov ebx, dword [ebp - 8]
mov edi, dword [ebp + 0x14]
mov ecx, dword [ebp - 4]
movzx eax, cx
mov dword [ebp - 0x84], eax
cmp esi, ebx
jae 0x47662e
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x18], 0
cmp edx, dword [ebp - 0x78]
jae 0x47666a
mov edi, dword [edi]
movzx eax, cx
cmp eax, dword [edi + 0x20]
ja 0x476617
cmp dword [ebp - 0x38], 0
mov eax, esi
movzx ebx, byte [esi]
mov dword [ebp - 0x28], eax
mov ecx, ebx
mov dword [ebp - 0xc], ebx
lea esi, [eax + 1]
mov dword [ebp + 8], esi
mov eax, esi
je 0x473f3f
cmp ebx, 0xc0
jb 0x473f3f
movzx ecx, byte [esi]
and ecx, 0x3f
test bl, 0x20
jne 0x473e8e
mov eax, ebx
mov ebx, ecx
and eax, 0x1f
shl eax, 6
or ebx, eax
inc esi
jmp 0x473f35
movzx eax, byte [esi + 1]
and eax, 0x3f
test bl, 0x10
jne 0x473eaf
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add esi, 2
jmp 0x473f35
test bl, 8
jne 0x473ed2
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 3
jmp 0x473f35
test bl, 4
jne 0x473f01
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 4
jmp 0x473f35
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 4]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 5
mov dword [ebp - 0xc], ebx
mov eax, esi
mov dword [ebp + 8], esi
mov ecx, ebx
cmp dword [ebp - 0x50], 0
je 0x473fb7
cmp ecx, 0x5c
jne 0x473f61
cmp eax, dword [ebp - 8]
jae 0x473f61
cmp byte [esi], 0x45
jne 0x473f61
mov dword [ebp - 0x50], 0
inc esi
jmp 0x473e07
cmp dword [ebp - 0x54], 0
jg case.0x47432c.34
cmp dword [ebp - 0x64], 0
jne 0x473fa3
mov ecx, dword [ebp - 0x60]
mov eax, ecx
dec ecx
mov dword [ebp - 0x60], ecx
test eax, eax
jg 0x473f9c
push dword [ebp + 0x14]
lea eax, [ebp - 0x5c]
push edx
push dword [ebp - 0x68]
push eax
push dword [ebp - 0x28]
call fcn.00473aa0
mov edx, eax
add esp, 0x14
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x20], 1
mov dword [edx], ebx
add edx, 4
mov dword [ebp - 0x48], 0
mov dword [ebp + 0xc], edx
jmp 0x473e07
cmp dword [ebp - 0x64], 0
je 0x4740ed
mov eax, dword [ebp - 0x1c]
and eax, 0x400080
cmp eax, 0x400080
jne 0x47401e
cmp ecx, 0xff
jbe 0x473feb
mov eax, ebx
or eax, 1
cmp eax, 0x200f
je 0x473feb
cmp eax, 0x2029
jne 0x47401e
mov ecx, dword [ebp + 0x14]
cmp ebx, 0x100
jae 0x4740f0
cmp ebx, 0x23
je 0x4740f0
mov eax, dword [ecx + 0x10]
test byte [ebx + eax], 1
jne 0x4740f0
cmp ebx, 0x85
je 0x4740f0
jmp 0x474021
mov ecx, dword [ebp + 0x14]
cmp ebx, 0x29
je 0x4740a0
cmp ebx, 0x5c
jne 0x474090
mov eax, dword [ebp - 0x1c]
test eax, 0x400000
je 0x474090
mov ebx, dword [ebp - 8]
push ecx
push 0
push dword [edi + 0x24]
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp + 8]
push ebx
push eax
call fcn.0046dd00
mov ecx, dword [ebp - 0x10]
add esp, 0x20
test ecx, ecx
jne 0x476366
sub eax, ecx
je 0x474087
sub eax, 0x19
je 0x475e74
mov esi, dword [ebp + 8]
sub eax, 1
jne 0x4762b1
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x50], 1
jmp 0x473e0a
mov esi, dword [ebp + 8]
mov ebx, dword [ebp - 0xc]
mov edx, dword [ebp + 0xc]
mov dword [edx], ebx
add edx, 4
mov ebx, dword [ebp - 8]
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov eax, esi
mov dword [ebp - 0x64], 0
sub eax, dword [ebp - 0x6c]
dec eax
cmp eax, 0xff
jg 0x4762c8
mov ecx, dword [ebp - 0x80]
mov eax, edx
mov ebx, dword [ebp - 8]
sub eax, ecx
mov edi, dword [ebp + 0x14]
sar eax, 2
dec eax
mov dword [ecx], eax
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 4]
test eax, eax
je 0x473e10
mov dword [edx], eax
add edx, 4
mov dword [ebp + 0xc], edx
mov dword [ebp - 0x70], 0
jmp 0x473e0d
mov ecx, dword [ebp + 0x14]
mov edi, dword [ebp - 8]
cmp ebx, 0x5c
jne 0x474118
cmp esi, edi
jae 0x474118
mov al, byte [esi]
cmp al, 0x51
je 0x474106
cmp al, 0x45
jne 0x474118
xor ecx, ecx
mov ebx, edi
cmp al, 0x51
sete cl
inc esi
mov dword [ebp - 0x50], ecx
jmp 0x473e0a
test byte [ebp - 0x1c], 0x80
je 0x474227
cmp ebx, 0x100
jae 0x47413a
mov eax, dword [ecx + 0x10]
mov ecx, dword [ebp - 4]
test byte [ebx + eax], 1
jne 0x475441
mov ecx, dword [ebp - 4]
cmp ebx, 0x85
je 0x475441
mov eax, ebx
or eax, 1
cmp eax, 0x200f
je 0x475441
cmp eax, 0x2029
je 0x475441
cmp ebx, 0x23
jne 0x474227
mov ebx, dword [ebp - 8]
mov edi, dword [ebp + 0x14]
cmp esi, ebx
jae 0x473e10
nop dword [eax + eax]
mov edx, dword [ebp + 0x14]
mov ecx, dword [edx + 0x90]
lea edi, [edx + 0x94]
mov eax, dword [edx + 0x20]
test ecx, ecx
je 0x4741c4
cmp esi, eax
jae 0x4741b4
push dword [ebp - 0x38]
push edi
push eax
push ecx
push esi
call fcn.0046b140
add esp, 0x14
test eax, eax
je 0x4741b4
mov eax, 1
jmp 0x4741b6
xor eax, eax
test eax, eax
je 0x4741e6
add esi, dword [edi]
mov edx, dword [ebp + 0xc]
jmp 0x473e0a
mov ecx, dword [edi]
sub eax, ecx
cmp esi, eax
ja 0x4741e6
mov al, byte [esi]
cmp al, byte [edx + 0xa0]
jne 0x4741e6
cmp ecx, 1
je 0x4741ba
mov al, byte [esi + 1]
cmp al, byte [edx + 0xa1]
je 0x4741ba
inc esi
cmp dword [ebp - 0x38], 0
mov eax, esi
je 0x474211
cmp esi, ebx
jae 0x474211
mov ecx, esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x474180
mov edx, dword [ebp + 0xc]
lea esi, [ecx + 1]
mov edi, dword [ebp + 0x14]
mov ecx, esi
cmp esi, ebx
jb 0x4741f5
jmp 0x473e0d
mov edx, dword [ebp + 0xc]
mov edi, dword [ebp + 0x14]
mov ecx, dword [ebp - 4]
cmp eax, ebx
jb 0x474180
jmp 0x473e10
cmp ebx, 0x28
jne 0x47425f
mov eax, edi
sub eax, esi
cmp eax, 2
jl 0x474292
cmp byte [esi], 0x3f
jne 0x474292
cmp byte [esi + 1], 0x23
jne 0x474292
mov ebx, dword [ebp - 8]
inc esi
cmp esi, ebx
jae 0x4762e0
cmp byte [esi], 0x29
jne 0x474243
cmp esi, ebx
jae 0x4762e0
inc esi
jmp 0x473e0a
cmp ebx, 0x2a
je 0x4742c0
cmp ebx, 0x2b
je 0x4742c0
cmp ebx, 0x3f
je 0x4742c0
cmp ebx, 0x7b
jne 0x474292
lea eax, [ebp - 0x10]
mov dword [ebp - 0x4c], esi
push eax
push 0
push 0
lea eax, [ebp - 0x4c]
push edi
push eax
call fcn.00477ef0
mov edx, dword [ebp + 0xc]
add esp, 0x14
test eax, eax
jne 0x4742c0
mov ecx, dword [ebp - 0x60]
mov eax, ecx
dec ecx
mov dword [ebp - 0x60], ecx
test eax, eax
jg 0x4742c0
push dword [ebp + 0x14]
lea eax, [ebp - 0x5c]
push edx
push dword [ebp - 0x68]
push eax
push dword [ebp - 0x28]
call fcn.00473aa0
mov edx, eax
add esp, 0x14
mov eax, dword [ebp - 0x5c]
mov dword [ebp + 0xc], edx
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x54]
test ecx, ecx
jle case.0x47432c.33
cmp ebx, 0x28
jne case.0x47432c.34
mov eax, edi
sub eax, esi
cmp eax, 3
jl case.0x47432c.34
mov al, byte [esi]
cmp al, 0x3f
je 0x4742fb
cmp al, 0x2a
je 0x474300
dec esi
mov eax, dword [ebp + 0x14]
mov ecx, 0x80
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [esi], 0x2a
jne 0x474319
mov eax, dword [ebp + 0x14]
movzx ecx, byte [esi + 1]
mov eax, dword [eax + 0x10]
movzx eax, byte [ecx + eax]
mov ecx, dword [ebp - 0x54]
shr eax, 2
and eax, 1
jmp 0x47434d
movzx eax, byte [esi + 1]
add eax, 0xffffffdf
cmp eax, 0x22
ja case.0x47432c.34
movzx eax, byte [eax + 0x4766c0]
jmp dword [eax*4 + 0x4766b0]
xor eax, eax
cmp ecx, 2
sete al
jmp 0x47434d
mov al, byte [esi + 2]
cmp al, 0x3d
je 0x474348
cmp al, 0x21
jne case.0x47432c.34
mov eax, 1
test eax, eax
je case.0x47432c.34
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x48]
mov edi, eax
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x48], 0
test eax, eax
je 0x4743ae
cmp ebx, 0x3f
je 0x474382
cmp ebx, 0x2b
jne 0x4743ae
cmp ebx, 0x3f
mov ecx, 0x10000
mov ebx, 0x20000
cmove ecx, ebx
add ecx, eax
xor eax, eax
cmp edi, 0x803d0000
setne al
lea eax, [eax*8 - 0xc]
mov dword [eax + edx], ecx
jmp 0x473e07
lea eax, [ebx - 0x24]
cmp eax, 0x58
ja case.0x4743c1.37
movzx eax, byte [eax + 0x476718]
jmp dword [eax*4 + 0x4766e4]
mov ebx, dword [ebp - 8]
mov dword [ebp - 0x4c], esi
mov esi, dword [ebp + 0x14]
push esi
push 0
mov eax, dword [esi]
push dword [eax + 0x24]
lea eax, [ebp - 0x10]
push dword [ebp - 0x1c]
push eax
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp + 8]
push ebx
push eax
call fcn.0046dd00
mov ecx, dword [ebp - 0x10]
add esp, 0x20
mov edi, eax
test ecx, ecx
jne 0x4745de
test edi, edi
je 0x474729
js 0x4746d3
lea ecx, [edi - 6]
cmp ecx, 0x16
ja case.0x47441f.13
movzx eax, byte [ecx + 0x47678c]
jmp dword [eax*4 + 0x476774]
test dword [ebp - 0x1c], 0x100000
mov esi, dword [ebp + 8]
je 0x47443f
mov ecx, 0xb7
mov dword [ebp - 0x10], ecx
jmp 0x4745e1
mov edx, dword [ebp + 0xc]
lea eax, [edi - 0x7fe80000]
mov dword [ebp - 0x20], 1
mov dword [edx], eax
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0a
push esi
lea eax, [ebp - 0x10]
mov dword [ebp - 0x28], 0
push eax
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp + 8]
push eax
call fcn.00473430
add esp, 0x18
test eax, eax
je 0x4745db
cmp dword [ebp - 0x88], 0
je 0x4744a6
xor eax, eax
cmp edi, 0xf
sete al
lea edi, [eax + 0xf]
mov edx, dword [ebp + 0xc]
lea eax, [edi - 0x7fe80000]
movzx ecx, word [ebp - 0x28]
mov esi, dword [ebp + 8]
shl ecx, 0x10
mov dword [edx], eax
movzx eax, word [ebp - 0x14]
or ecx, eax
mov dword [ebp - 0x20], 1
mov dword [edx + 4], ecx
add edx, 8
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov esi, dword [ebp + 8]
cmp esi, ebx
jae 0x474605
mov al, byte [esi]
cmp al, 0x7b
je 0x4744f3
cmp al, 0x3c
je 0x47455c
cmp al, 0x27
jne 0x474605
cmp al, 0x27
mov ebx, 0x7d
mov eax, 0x27
cmove ebx, eax
cmp edi, 0x1b
jne 0x474574
cmp ebx, 0x7d
je 0x474574
lea eax, [esi + 1]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp + 0x14]
push 0xa1
push 0xffff
push dword [eax + 0x74]
lea eax, [ebp - 0x28]
push dword [ebp - 8]
push eax
call fcn.00477da0
add esp, 0x1c
test eax, eax
je 0x47456d
mov ecx, dword [ebp - 0x28]
cmp ecx, dword [ebp - 8]
jae 0x474563
movzx eax, byte [ecx]
cmp eax, ebx
jne 0x474563
mov eax, dword [ebp - 0x30]
mov esi, ecx
mov ebx, dword [ebp - 8]
mov edi, dword [ebp + 0x14]
jmp 0x475fa9
mov ebx, 0x3e
jmp 0x474502
mov ecx, 0x9d
mov dword [ebp - 0x10], ecx
jmp 0x4745e1
mov ecx, dword [ebp - 0x10]
test ecx, ecx
jne 0x4745e1
push dword [ebp + 0x14]
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x3c]
push eax
push ebx
push dword [ebp - 0x38]
lea eax, [ebp + 8]
push dword [ebp - 8]
push eax
call fcn.00477a60
add esp, 0x24
test eax, eax
je 0x4745db
cmp edi, 0x1c
je 0x4745ad
mov eax, 0x80210000
cmp ebx, 0x7d
jne 0x4745b2
mov eax, 0x80040000
mov edx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov ebx, dword [ebp - 8]
mov dword [ebp - 0x20], 1
mov dword [edx], eax
mov eax, dword [ebp - 0x2c]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x3c]
mov dword [edx + 8], eax
add edx, 0xc
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov ecx, dword [ebp - 0x10]
mov esi, dword [ebp + 8]
test byte [ebp - 0x58], 2
je 0x47669c
mov eax, dword [ebp - 0x4c]
mov esi, eax
mov ebx, dword [ebp - 8]
cmp eax, ebx
jb 0x474734
mov edx, 0x5c
jmp 0x474830
cmp edi, 0x1b
mov ecx, 0xa9
mov eax, 0x9d
cmove ecx, eax
mov dword [ebp - 0x10], ecx
jmp 0x4745e1
mov dword [ebp - 0x20], 1
mov edx, dword [ebp + 0xc]
lea eax, [edi - 0x7fe80000]
mov esi, dword [ebp + 8]
mov dword [edx], eax
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0a
test dword [ebp - 0x1c], 0x20000
mov dword [ebp - 0x20], 1
je 0x474621
cmp edi, 7
je 0x47465e
cmp edi, 9
je 0x47465e
mov eax, 0x8018000f
cmp edi, 0xb
jne 0x474663
mov eax, 0x80180010
mov edx, dword [ebp + 0xc]
mov dword [edx], eax
add edx, 4
mov dword [ebp + 0xc], edx
cmp ecx, 5
ja case.default.0x474677
jmp dword [ecx*4 + 0x4767a4]
mov esi, dword [ebp + 8]
mov dword [edx], 0x3000d
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov esi, dword [ebp + 8]
mov dword [edx], 0x70000
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov esi, dword [ebp + 8]
mov dword [edx], 0x90000
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov edx, dword [ebp + 0xc]
lea eax, [edi - 0x7fe80000]
mov esi, dword [ebp + 8]
mov dword [edx], eax
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov eax, dword [ebp + 0x14]
neg edi
mov esi, dword [ebp + 8]
mov ecx, esi
mov edx, dword [ebp + 0xc]
sub ecx, dword [eax + 0x1c]
mov eax, edi
or eax, 0x80030000
dec ecx
mov dword [edx], eax
add edx, 4
mov dword [ebp - 0x3c], ecx
mov dword [ebp + 0xc], edx
cmp edi, 0xa
jge 0x474715
mov eax, dword [ebp + 0x14]
cmp dword [eax + edi*4 + 0x2c], 0xffffffff
jne 0x47471d
mov dword [eax + edi*4 + 0x2c], ecx
mov dword [ebp - 0x20], 1
jmp 0x473e0a
mov dword [edx], ecx
add edx, 4
mov dword [ebp + 0xc], edx
mov dword [ebp - 0x20], 1
jmp 0x473e0a
mov esi, dword [ebp + 8]
mov edx, dword [ebp - 0xc]
jmp 0x474830
cmp dword [ebp - 0x38], 0
lea esi, [eax + 1]
movzx edx, byte [eax]
je 0x474830
cmp edx, 0xc0
jb 0x474830
test dl, 0x20
jne 0x474769
movzx eax, byte [esi]
and edx, 0x1f
shl edx, 6
and eax, 0x3f
or edx, eax
inc esi
jmp 0x474830
test dl, 0x10
jne 0x474790
movzx eax, byte [esi]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 2
jmp 0x474830
test dl, 8
jne 0x4747c0
movzx eax, byte [esi]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x474830
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x4747fc
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x474830
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x20], 1
mov dword [eax], edx
mov edx, eax
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov ebx, dword [ebp - 8]
mov dword [edx], 0x80090000
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov ebx, dword [ebp - 8]
mov dword [edx], 0x80160000
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov dword [edx], 0x80170000
jmp 0x4748c6
mov dword [ebp - 0x48], 0x80340000
jmp 0x4748e5
mov dword [ebp - 0x48], 0x80370000
jmp 0x4748e5
mov dword [ebp - 0x48], 0x803a0000
jmp 0x4748e5
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 8]
lea eax, [ebp + 8]
push eax
call fcn.00477ef0
add esp, 0x14
test eax, eax
jne 0x4748db
mov ecx, dword [ebp - 0x10]
test ecx, ecx
jne 0x476366
mov edx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov dword [edx], ebx
mov ebx, dword [ebp - 8]
add edx, 4
mov dword [ebp - 0x20], 1
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov esi, dword [ebp + 8]
mov dword [ebp - 0x48], 0x803d0000
cmp dword [ebp - 0x28], 0
je 0x4762f7
mov edx, dword [ebp + 0xc]
cmp dword [edx - 4], 0x802a0000
lea ecx, [edx - 4]
jne 0x474921
mov edi, dword [ebp - 0x7c]
cmp ecx, edi
jb 0x474911
mov eax, dword [ecx]
mov dword [ecx + 4], eax
sub ecx, 4
cmp ecx, edi
jae 0x474905
mov dword [edi], 0x801a0000
mov dword [edx + 4], 0x80190000
add edx, 8
mov eax, dword [ebp - 0x48]
mov edi, dword [ebp + 0x14]
mov ecx, dword [ebp - 4]
mov dword [edx], eax
add edx, 4
cmp ebx, 0x7b
mov dword [ebp + 0xc], edx
mov ebx, dword [ebp - 8]
jne 0x473e10
mov eax, dword [ebp - 0x34]
mov dword [edx], eax
mov eax, dword [ebp - 0x18]
mov dword [edx + 4], eax
add edx, 8
mov dword [ebp + 0xc], edx
jmp 0x473e0d
mov ecx, dword [ebp - 8]
mov eax, ecx
sub eax, esi
mov dword [ebp - 0x20], 1
cmp eax, 6
jl 0x474a1d
push 6
push 0x4e0328
push esi
call fcn.0046af30
add esp, 0xc
test eax, eax
je 0x474997
push 6
push str._:_:__
push esi
call fcn.0046af30
add esp, 0xc
test eax, eax
jne 0x474a1a
mov eax, dword [ebp + 0xc]
mov dword [eax], 0x80180005
lea ecx, [eax + 8]
cmp byte [esi + 2], 0x3c
jne 0x4749b2
mov dword [eax + 4], 0x80230000
jmp 0x4749cb
mov dword [eax + 4], 0x80250000
mov eax, dword [ebp + 0x10]
mov dword [eax], 1
mov dword [ecx], 0
add ecx, 4
test dword [ebp - 0x1c], 0x20000
lea edx, [ecx + 4]
jne 0x4749f4
mov ebx, dword [ebp - 8]
mov dword [ecx], 0x8018000b
mov dword [edx], 0x80190000
add edx, 4
add esi, 6
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov ebx, dword [ebp - 8]
mov dword [ecx], 0x80180010
mov dword [edx], 0x90000
add edx, 4
mov dword [edx], 0x80190000
add edx, 4
add esi, 6
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov ecx, dword [ebp - 8]
cmp esi, ecx
jae 0x474a48
mov al, byte [esi]
cmp al, 0x3a
je 0x474a2f
cmp al, 0x2e
je 0x474a2f
cmp al, 0x3d
jne 0x474a48
lea eax, [ebp - 0x4c]
push eax
push ecx
push esi
call fcn.0046f260
add esp, 0xc
test eax, eax
jne 0x47630f
mov ecx, dword [ebp - 8]
xor edi, edi
cmp esi, ecx
jae 0x474bcc
movzx ebx, byte [esi]
inc esi
cmp dword [ebp - 0x38], 0
mov eax, ebx
mov dword [ebp - 0xc], ebx
mov ecx, eax
mov dword [ebp + 8], esi
mov edx, esi
je 0x474b61
cmp ebx, 0xc0
jb 0x474b61
test al, 0x20
jne 0x474a90
movzx ebx, byte [esi]
and eax, 0x1f
and ebx, 0x3f
shl eax, 6
or ebx, eax
inc esi
jmp 0x474b57
test al, 0x10
jne 0x474ab6
movzx ebx, byte [esi]
and eax, 0xf
and ebx, 0x3f
shl eax, 6
or ebx, eax
movzx eax, byte [esi + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 2
jmp 0x474b57
test al, 8
jne 0x474ae5
movzx ebx, byte [esi]
and eax, 7
and ebx, 0x3f
shl eax, 6
or ebx, eax
movzx eax, byte [esi + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 3
jmp 0x474b57
movzx ecx, byte [esi]
and ecx, 0x3f
test al, 4
movzx eax, byte [esi + 1]
jne 0x474b20
and ebx, 3
and eax, 0x3f
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 4
jmp 0x474b57
and ebx, 1
and eax, 0x3f
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 4]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 5
mov dword [ebp - 0xc], ebx
mov edx, esi
mov dword [ebp + 8], esi
mov ecx, ebx
cmp ecx, 0x5c
jne 0x474ba2
mov ecx, dword [ebp - 8]
cmp edx, ecx
jae 0x474b7a
cmp byte [esi], 0x45
jne 0x474b7a
lea esi, [edx + 1]
mov dword [ebp + 8], esi
jmp 0x474bc4
mov eax, ecx
sub eax, edx
cmp eax, 3
jl 0x474bcc
push 3
push 0x4e0338
push esi
call fcn.0046af30
add esp, 0xc
test eax, eax
jne 0x474bcc
mov ecx, dword [ebp - 8]
add esi, 3
mov dword [ebp + 8], esi
jmp 0x474bc4
test dword [ebp - 0x1c], 0x1000000
je 0x474bb5
cmp ecx, 0x20
je 0x474bc1
cmp ecx, 9
je 0x474bc1
test edi, edi
jne 0x474bcc
cmp ebx, 0x5e
jne 0x474bcc
lea edi, [ebx - 0x5d]
mov ecx, dword [ebp - 8]
cmp esi, ecx
jb 0x474a52
cmp ebx, 0x5d
jne 0x474bfc
mov eax, dword [ebp + 0x14]
test byte [eax + 0x6c], 1
je 0x474bfc
mov edx, dword [ebp + 0xc]
test edi, edi
mov ebx, dword [ebp - 8]
mov eax, 0x800b0000
mov ecx, 0x800c0000
cmovne eax, ecx
mov dword [edx], eax
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov edx, dword [ebp + 0xc]
test edi, edi
mov ecx, 0x800e0000
mov dword [ebp - 0x20], 1
mov eax, 0x800a0000
cmovne eax, ecx
mov dword [edx], eax
add edx, 4
xor ecx, ecx
mov dword [ebp + 0xc], edx
mov dword [ebp - 0x14], ecx
jmp 0x474c27
mov ecx, dword [ebp - 0x14]
cmp dword [ebp - 0x50], 0
mov edi, 1
je 0x474c5a
cmp ebx, 0x5c
jne 0x474fcc
cmp esi, dword [ebp - 8]
jae 0x474fcc
cmp byte [esi], 0x45
jne 0x474fcc
mov dword [ebp - 0x50], 0
inc esi
jmp 0x474da0
test dword [ebp - 0x1c], 0x1000000
je 0x474c75
cmp ebx, 0x20
je 0x474da0
cmp ebx, 9
je 0x474da0
cmp ebx, 0x5b
jne 0x474e19
mov eax, dword [ebp - 8]
sub eax, esi
cmp eax, 3
jl 0x474fcc
mov al, byte [esi]
cmp al, 0x3a
je 0x474c9e
cmp al, 0x2e
je 0x474c9e
cmp al, 0x3d
jne 0x474fcc
lea eax, [ebp - 0x4c]
push eax
push dword [ebp - 8]
push esi
call fcn.0046f260
add esp, 0xc
test eax, eax
je 0x474fc9
mov dword [ebp - 0xc], 0
cmp dword [ebp - 0x14], edi
je 0x47637e
cmp byte [esi], 0x3a
jne 0x47632e
inc esi
mov edx, esi
cmp byte [esi], 0x5e
jne 0x474cdd
inc esi
mov dword [ebp - 0xc], edi
mov edx, esi
mov ecx, dword [ebp - 0x4c]
mov ebx, 0x4e0068
sub ecx, edx
xor edi, edi
mov dword [ebp - 0x18], ecx
nop dword [eax]
movzx eax, byte [edi + 0x4e00bc]
cmp ecx, eax
jne 0x474d0f
push ecx
push ebx
push edx
call fcn.0046af30
add esp, 0xc
test eax, eax
je 0x474d3a
mov ecx, dword [ebp - 0x18]
mov edx, esi
movzx eax, byte [edi + 0x4e00bc]
inc ebx
inc edi
add ebx, eax
cmp byte [edi + 0x4e00bc], 0
jne 0x474cf0
mov eax, dword [ebp + 0x14]
mov ecx, 0x82
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test edi, edi
js 0x474d23
mov esi, dword [ebp - 0x4c]
mov eax, dword [ebp - 8]
add esi, 2
dec eax
cmp esi, eax
jae 0x474d5b
cmp byte [esi], 0x2d
jne 0x474d5b
cmp byte [esi + 1], 0x5d
jne 0x47637e
xor ecx, ecx
test dword [ebp - 0x1c], 0x20000
mov dword [ebp - 0x14], ecx
je 0x474e04
mov eax, dword [edi*8 + 0x53b890]
mov ecx, dword [edi*8 + 0x53b894]
test eax, eax
js 0x474deb
mov edx, dword [ebp - 0xc]
mov ebx, dword [ebp + 0xc]
xor edx, 1
sub edx, 0x7fe7fff1
shl eax, 0x10
or eax, ecx
mov dword [ebx], edx
mov edx, ebx
mov dword [edx + 4], eax
add edx, 8
mov dword [ebp + 0xc], edx
mov edi, dword [ebp - 0x14]
cmp esi, dword [ebp - 8]
jae 0x4763ad
movzx ebx, byte [esi]
inc esi
cmp dword [ebp - 0x38], 0
mov eax, ebx
mov dword [ebp - 0xc], ebx
mov ecx, eax
mov dword [ebp + 8], esi
je 0x475258
cmp eax, 0xc0
jb 0x475258
test al, 0x20
jne 0x475186
movzx ebx, byte [esi]
and eax, 0x1f
and ebx, 0x3f
shl eax, 6
or ebx, eax
inc esi
jmp 0x475250
test ecx, ecx
je 0x474e04
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp + 0xc]
xor eax, 1
sub eax, 0x7fe7ffee
mov dword [edx], eax
add edx, 4
jmp 0x474d9d
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp + 0xc]
add eax, 0x801c
shl eax, 0x10
mov dword [edx], eax
mov dword [edx + 4], edi
jmp 0x474d9a
cmp ebx, 0x2d
jne 0x474e47
cmp ecx, 2
jb 0x474fcc
cmp ecx, 3
mov dword [ebp - 0x14], edi
mov eax, 0x801e0000
mov ecx, 0x801f0000
cmove eax, ecx
mov dword [edx], eax
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x474da3
cmp ebx, 0x5c
jne 0x474fcc
mov eax, dword [ebp + 0x14]
mov edi, esi
push eax
push 1
mov dword [ebp - 0x4c], edi
mov ebx, esi
mov eax, dword [eax]
mov dword [ebp - 0x18], esi
push dword [eax + 0x24]
lea eax, [ebp - 0x10]
push dword [ebp - 0x1c]
push eax
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 8]
lea eax, [ebp + 8]
push eax
call fcn.0046dd00
mov ecx, dword [ebp - 0x10]
add esp, 0x20
mov esi, eax
test ecx, ecx
je 0x474fa9
test byte [ebp - 0x58], 2
je 0x476366
mov esi, edi
cmp ebx, dword [ebp - 8]
jb 0x474ea7
mov ebx, 0x5c
jmp 0x474fc4
mov esi, dword [ebp - 0x18]
movzx ebx, byte [edi]
inc esi
cmp dword [ebp - 0x38], 0
je 0x474fc4
cmp ebx, 0xc0
jb 0x474fc4
test bl, 0x20
jne 0x474edd
movzx eax, byte [esi]
and ebx, 0x1f
shl ebx, 6
and eax, 0x3f
or ebx, eax
inc esi
jmp 0x474fc4
test bl, 0x10
jne 0x474f04
movzx eax, byte [esi]
and ebx, 0xf
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 2
jmp 0x474fc4
test bl, 8
jne 0x474f37
movzx eax, byte [esi]
and ebx, 7
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 3
jmp 0x474fc4
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 4
jne 0x474f73
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 4
jmp 0x474fc4
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 4]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 5
jmp 0x474fc4
mov eax, esi
cmp esi, 0x1a
ja case.0x474fb7.1
movzx eax, byte [eax + 0x4767d4]
jmp dword [eax*4 + 0x4767bc]
mov esi, dword [ebp + 8]
mov ebx, dword [ebp - 0xc]
xor edi, edi
mov edx, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x14]
cmp ecx, 1
jne 0x475173
cmp ebx, dword [edx - 8]
jne 0x475147
sub edx, 4
xor edi, edi
mov dword [ebp + 0xc], edx
mov dword [ebp - 0x14], edi
jmp 0x474da3
mov esi, dword [ebp + 8]
mov ebx, 8
xor edi, edi
jmp 0x474fc6
mov dword [ebp - 0x50], 1
mov esi, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
jmp 0x474da0
cmp dword [ebp - 0x14], 1
je 0x47637b
xor edi, edi
lea ecx, [esi - 6]
mov dword [ebp - 0x14], edi
cmp ecx, 0xf
ja case.0x47502e.13
movzx eax, byte [ecx + 0x476804]
jmp dword [eax*4 + 0x4767f0]
mov edx, dword [ebp + 0xc]
lea eax, [esi - 0x7fe80000]
mov dword [edx], eax
add edx, 4
jmp 0x47511d
test dword [ebp - 0x1c], 0x20000
jne 0x475064
mov edx, dword [ebp + 0xc]
lea eax, [esi - 0x7fe80000]
mov dword [edx], eax
add edx, 4
jmp 0x47511d
cmp esi, 7
je 0x475078
cmp esi, 9
je 0x475078
mov eax, 0x8018000f
cmp esi, 0xb
jne 0x47507d
mov eax, 0x80180010
mov edx, dword [ebp + 0xc]
mov dword [edx], eax
add edx, 4
mov dword [ebp + 0xc], edx
cmp ecx, 5
ja case.default.0x475091
jmp dword [ecx*4 + 0x476814]
mov dword [edx], 0x3000d
add edx, 4
jmp 0x47511d
mov dword [edx], 0x70000
add edx, 4
jmp 0x47511d
mov dword [edx], 0x90000
add edx, 4
jmp 0x47511d
push dword [ebp + 0x14]
lea eax, [ebp - 0x10]
mov dword [ebp - 0x18], edi
push eax
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], edi
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x8c]
push eax
lea eax, [ebp + 8]
push eax
call fcn.00473430
add esp, 0x18
test eax, eax
je 0x476479
cmp dword [ebp - 0x8c], edi
je 0x4750ff
xor eax, eax
cmp esi, 0xf
sete al
lea esi, [eax + 0xf]
mov edx, dword [ebp + 0xc]
lea eax, [esi - 0x7fe80000]
movzx ecx, word [ebp - 0x18]
shl ecx, 0x10
mov dword [edx], eax
movzx eax, word [ebp - 0x34]
or ecx, eax
mov dword [edx + 4], ecx
add edx, 8
mov dword [ebp + 0xc], edx
mov eax, dword [ebp - 8]
mov esi, dword [ebp + 8]
dec eax
cmp esi, eax
jae 0x474da3
cmp byte [esi], 0x2d
jne 0x474da3
cmp byte [esi + 1], 0x5d
jne 0x47637e
jmp 0x474da3
jb 0x476395
test edi, edi
jne 0x475161
cmp dword [edx - 4], 0x801f0000
jne 0x475161
mov dword [edx - 4], 0x801e0000
mov dword [edx], ebx
add edx, 4
xor edi, edi
mov dword [ebp + 0xc], edx
mov dword [ebp - 0x14], edi
jmp 0x474da3
add edi, 2
mov dword [edx], ebx
add edx, 4
mov dword [ebp - 0x14], edi
mov dword [ebp + 0xc], edx
jmp 0x474da3
test al, 0x10
jne 0x4751ac
movzx ebx, byte [esi]
and eax, 0xf
and ebx, 0x3f
shl eax, 6
or ebx, eax
movzx eax, byte [esi + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 2
jmp 0x475250
test al, 8
jne 0x4751de
movzx ebx, byte [esi]
and eax, 7
and ebx, 0x3f
shl eax, 6
or ebx, eax
movzx eax, byte [esi + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 3
jmp 0x475250
movzx ecx, byte [esi]
and ecx, 0x3f
test al, 4
movzx eax, byte [esi + 1]
jne 0x475219
and ebx, 3
and eax, 0x3f
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 4
jmp 0x475250
and ebx, 1
and eax, 0x3f
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 4]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 5
mov dword [ebp - 0xc], ebx
mov ecx, ebx
mov dword [ebp + 8], esi
cmp ecx, 0x5d
jne 0x474c24
cmp dword [ebp - 0x50], 0
jne 0x474c24
cmp edi, 1
jne 0x475277
mov dword [edx - 4], 0x2d
mov ebx, dword [ebp - 8]
mov dword [edx], 0x800d0000
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov ebx, dword [ebp - 8]
cmp esi, ebx
jae 0x476697
mov al, byte [esi]
cmp al, 0x3f
je 0x475667
mov edi, dword [ebp + 0x14]
cmp al, 0x2a
je 0x4752eb
inc dword [ebp - 4]
test dword [ebp - 0x1c], 0x2000
jne 0x4752d9
mov ecx, dword [edi + 0x74]
cmp ecx, 0xffff
jae 0x476589
inc ecx
mov dword [edi + 0x74], ecx
or ecx, 0x80080000
mov dword [edx], ecx
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0d
mov ecx, 0x801a0000
mov dword [edx], ecx
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0d
mov ecx, dword [ebp - 4]
mov eax, ebx
sub eax, esi
cmp eax, 1
jle 0x473e10
movzx ecx, byte [esi + 1]
mov dword [ebp - 0xc], ecx
cmp ecx, 0x29
je 0x473e0d
mov eax, dword [edi + 0x10]
push edi
test byte [ecx + eax], 4
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x3c]
push eax
push 0
push dword [ebp - 0x38]
lea eax, [ebp + 8]
push ebx
push eax
je 0x475510
mov dword [ebp - 0xc], 0x4dff08
call fcn.00477a60
add esp, 0x24
test eax, eax
je 0x476479
mov esi, dword [ebp + 8]
mov dword [ebp - 0x28], esi
cmp esi, ebx
jae 0x476406
cmp byte [esi], 0x3a
jne 0x476406
xor ecx, ecx
mov dword [ebp - 0x30], 0
xor ebx, ebx
xor edx, edx
xor edi, edi
mov esi, ecx
lea eax, [edi*8 + 0x4dffe0]
mov edi, dword [ebp - 0x2c]
mov dword [ebp - 0x18], eax
cmp edi, dword [eax]
jne 0x4753a2
push dword [ebp - 0x2c]
mov dword [ebp - 0x34], edx
mov edi, esi
push dword [ebp - 0xc]
push dword [ebp - 0x44]
call fcn.0046af30
add esp, 0xc
test eax, eax
je 0x4753c2
mov eax, dword [ebp - 0x18]
mov ecx, ebx
mov edx, dword [ebp - 0xc]
lea ebx, [ecx + 1]
inc edx
mov dword [ebp - 0x30], ebx
add edx, dword [eax]
mov edi, ebx
mov dword [ebp - 0xc], edx
mov ecx, ebx
mov edx, ebx
mov eax, ebx
mov esi, edi
cmp edi, 0x11
jl 0x475372
jmp 0x4753c5
mov eax, dword [ebp - 0x34]
mov esi, dword [ebp - 0x28]
cmp eax, 0x11
jge 0x476406
mov edx, dword [edi*8 + 0x4dffe4]
mov edi, dword [ebp - 0x14]
test edi, edi
jle 0x4753f0
lea eax, [edx + 0x7fdd0000]
cmp eax, 0x30000
ja 0x4763c4
cmp edx, 0x80250000
ja 0x47546a
je 0x47549a
cmp edx, 0x80230000
ja 0x47544c
je 0x475c58
cmp edx, 0x80020000
je 0x475c36
cmp edx, 0x80220000
jne 0x4763ef
mov edx, dword [ebp + 0xc]
inc esi
mov ecx, dword [ebp - 4]
movzx eax, cx
mov dword [edx], 0x80220000
add edx, 4
inc eax
mov dword [ebp + 0xc], edx
movzx ecx, ax
mov dword [ebp - 4], ecx
mov ebx, dword [ebp - 8]
mov edi, dword [ebp + 0x14]
jmp 0x473e10
cmp edx, 0x80240000
jne 0x4763ef
mov edx, dword [ebp + 0xc]
inc esi
mov ebx, dword [ebp - 8]
mov dword [edx], 0x80240000
jmp 0x475cf0
cmp edx, 0x80280000
ja 0x4754a3
je 0x47549a
cmp edx, 0x80260000
je 0x47549a
cmp edx, 0x80270000
jne 0x4763ef
mov edx, dword [ebp + 0xc]
inc esi
mov ebx, dword [ebp - 8]
mov dword [edx], 0x80270000
jmp 0x475cf0
mov ebx, dword [ebp - 8]
dec esi
jmp 0x475cca
cmp edx, 0x8fff0000
jne 0x4763ef
mov edx, dword [ebp + 0xc]
inc esi
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x24]
inc eax
mov dword [ebp - 4], eax
mov dword [edx], 0x80220000
mov dword [edx + 4], 0x80020000
add edx, 8
mov dword [ebp + 0xc], edx
test ecx, ecx
jne 0x4754df
mov edi, dword [ebp + 0x14]
mov ecx, dword [edi + 0x14]
mov dword [ebp - 0x24], ecx
jmp 0x4754f1
add ecx, 0xc
mov dword [ebp - 0x24], ecx
cmp ecx, dword [ebp - 0x74]
jae 0x4765e8
mov edi, dword [ebp + 0x14]
mov ebx, dword [ebp - 8]
mov word [ecx], ax
mov eax, 4
mov word [ecx + 6], ax
mov eax, dword [ebp - 0x1c]
and eax, 0x10424e8
mov dword [ecx + 8], eax
jmp 0x473e0d
mov dword [ebp - 0x34], 0x4dfe40
call fcn.00477a60
add esp, 0x24
test eax, eax
je 0x476479
mov esi, dword [ebp + 8]
mov dword [ebp - 0x28], esi
cmp esi, ebx
jae 0x476638
mov al, byte [esi]
cmp al, 0x3a
je 0x475543
cmp al, 0x29
jne 0x476638
mov esi, dword [ebp - 0x34]
xor edi, edi
xor ecx, ecx
mov dword [ebp - 0x30], edi
xor edx, edx
mov dword [ebp - 0x18], edi
xor eax, eax
mov ebx, dword [ebp - 0x2c]
lea eax, [eax + eax*2]
mov dword [ebp - 0x34], eax
cmp ebx, dword [eax*4 + 0x4dfe70]
jne 0x475581
push dword [ebp - 0x2c]
mov ebx, edx
push esi
push dword [ebp - 0x44]
call fcn.0046af30
add esp, 0xc
test eax, eax
je 0x4755a1
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x4dfe70]
lea edi, [ecx + 1]
inc eax
mov dword [ebp - 0x30], edi
add esi, eax
mov dword [ebp - 0x18], edi
mov eax, edi
mov ecx, edi
mov edx, edi
mov ebx, edi
cmp eax, 9
jl 0x475554
mov esi, dword [ebp - 0x28]
cmp ebx, 9
jge 0x476638
cmp byte [esi], 0x3a
jne 0x4755c0
lea eax, [esi + 1]
cmp eax, dword [ebp - 8]
jae 0x4755c0
cmp byte [eax], 0x29
cmove esi, eax
lea edx, [edi + edi*2]
mov ebx, dword [edx*4 + 0x4dfe78]
test ebx, ebx
jle 0x475625
cmp byte [esi], 0x3a
jne 0x47641d
mov edx, dword [edx*4 + 0x4dfe74]
xor eax, eax
mov ecx, dword [ebp + 0xc]
inc esi
cmp edx, 0x802a0000
mov dword [ebp - 0x7c], ecx
sete al
mov dword [ebp - 0x20], eax
lea edi, [ecx + 4]
xor eax, eax
mov ebx, 0x10000
cmp edx, 0x80290000
cmovne eax, ebx
add eax, edx
mov ebx, dword [ebp - 8]
lea edx, [edi + 4]
mov dword [ecx], eax
mov dword [ebp - 0x80], edi
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x64], 1
mov dword [ebp + 0xc], edx
jmp 0x473e0a
mov edx, dword [edx*4 + 0x4dfe74]
xor eax, eax
mov ecx, dword [ebp + 0xc]
cmp edx, 0x802a0000
mov dword [ebp - 0x7c], ecx
sete al
mov dword [ebp - 0x20], eax
mov al, byte [esi]
lea edi, [ecx + 4]
inc esi
cmp al, 0x3a
jne 0x475658
test ebx, ebx
jns 0x4755f6
mov dword [ebp - 0x70], edx
mov eax, 0x80290000
jmp 0x475608
mov ebx, dword [ebp - 8]
mov dword [ecx], edx
mov edx, edi
mov dword [ebp + 0xc], edx
jmp 0x473e0a
inc esi
mov dword [ebp + 8], esi
mov edi, esi
cmp esi, ebx
jae 0x476697
mov cl, byte [esi]
movzx eax, cl
add eax, 0xffffffdf
cmp eax, 0x31
ja case.0x47568d.34
movzx eax, byte [eax + 0x476864]
jmp dword [eax*4 + 0x47682c]
inc esi
mov dword [ebp + 8], esi
cmp esi, ebx
jae 0x476697
mov al, byte [esi]
cmp al, 0x3c
jne 0x4756b0
mov eax, 0x3e
jmp 0x475d4c
cmp al, 0x3e
je case.0x47568d.38
cmp al, 0x3d
jne 0x476434
mov edi, dword [ebp + 0x14]
lea eax, [ebp - 0x10]
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x3c]
push eax
push 0x29
push dword [ebp - 0x38]
lea eax, [ebp + 8]
push ebx
push eax
call fcn.00477a60
add esp, 0x24
test eax, eax
je 0x476479
mov edx, dword [ebp + 0xc]
mov dword [edx], 0x80040000
mov eax, dword [ebp - 0x2c]
mov esi, dword [ebp + 8]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x3c]
mov dword [edx + 8], eax
add edx, 0xc
mov dword [ebp + 0xc], edx
mov dword [ebp - 0x20], 1
jmp 0x473e0d
xor eax, eax
inc esi
mov dword [ebp - 0x30], eax
cmp esi, ebx
jae 0x47644b
cmp byte [esi], 0x29
jne 0x47644b
mov edi, dword [ebp + 0x14]
jmp 0x475fac
mov eax, ebx
sub eax, esi
cmp eax, 2
jl 0x476462
mov al, byte [edi + 1]
sub al, 0x30
cmp al, 9
ja 0x476462
sub cl, 0x30
cmp cl, 9
ja 0x475f5c
mov edi, dword [ebp + 0x14]
or eax, 0xffffffff
jmp 0x475f62
mov edi, dword [ebp + 0x14]
lea eax, [ebp - 0x10]
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x3c]
push eax
push 0x29
push dword [ebp - 0x38]
lea eax, [ebp + 8]
push ebx
push eax
call fcn.00477a60
add esp, 0x24
test eax, eax
je 0x476479
mov edx, dword [ebp + 0xc]
mov dword [edx], 0x80210000
jmp 0x4756f7
inc esi
cmp esi, ebx
jae 0x476697
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x40]
dec eax
mov dword [ebp - 0x54], eax
test ecx, ecx
je 0x4757d5
test byte [ebp - 0x1c], 4
je 0x4757d5
lea eax, [edx - 0x10]
cmp ecx, eax
jne 0x4757d5
cmp dword [edx - 4], 0xff
cmove edx, ecx
mov dword [ebp + 0xc], edx
mov bl, byte [esi]
mov eax, edx
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x60], 1
cmp bl, 0x29
je 0x475894
cmp bl, 0x30
jb 0x4757fd
cmp bl, 0x39
jbe 0x475894
mov ecx, dword [0x4dd858]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x30], 0
test ecx, ecx
je 0x47582d
xor eax, eax
movzx edi, bl
xor edx, edx
cmp edi, ecx
je 0x475844
inc eax
mov edx, eax
mov dword [ebp - 0x30], eax
mov ecx, dword [edx*4 + 0x4dd858]
test ecx, ecx
jne 0x475818
mov eax, dword [ebp + 0x14]
mov ecx, 0xb6
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [edx*4 + 0x4dd74c]
test ecx, ecx
je 0x47582d
mov edx, dword [ebp + 0xc]
mov ebx, dword [ebp - 8]
mov dword [edx], 0x80070000
nop dword [eax + eax]
inc esi
cmp esi, ebx
jae 0x476491
movzx eax, byte [esi]
cmp eax, ecx
jne 0x475860
inc esi
cmp esi, ebx
jae 0x47587c
movzx eax, byte [esi]
cmp eax, ecx
je 0x475860
mov ecx, dword [ebp - 0x18]
mov eax, esi
mov edi, dword [ebp + 0x14]
sub eax, ecx
mov dword [edx + 0xc], eax
add edx, 0x10
sub ecx, dword [edi + 0x1c]
mov dword [ebp - 0x3c], ecx
jmp 0x4758dc
mov ebx, dword [ebp - 8]
xor ecx, ecx
mov dword [edx], 0x80060000
add edx, 0xc
mov dword [ebp + 0xc], edx
cmp esi, ebx
jae 0x4758d9
nop dword [eax]
mov dl, byte [esi]
lea eax, [edx - 0x30]
cmp al, 9
ja 0x4758d6
lea ecx, [ecx + ecx*4]
movzx eax, dl
lea ecx, [ecx - 0x18]
inc esi
lea ecx, [eax + ecx*2]
cmp ecx, 0xff
jg 0x4764ab
cmp esi, ebx
jb 0x4758b0
mov edx, dword [ebp + 0xc]
mov edi, dword [ebp + 0x14]
mov dword [edx], ecx
cmp esi, ebx
jae 0x4764c2
cmp byte [esi], 0x29
jne 0x4764c2
mov ecx, dword [ebp - 0x40]
inc esi
mov eax, esi
sub eax, dword [edi + 0x1c]
add edx, 4
mov dword [ebp + 0xc], edx
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0
jmp 0x473e0d
inc esi
mov dword [ebp + 8], esi
cmp esi, ebx
jae 0x476697
mov ecx, dword [ebp - 4]
mov al, byte [esi]
inc ecx
mov dword [ebp - 4], ecx
cmp al, 0x3f
je 0x475c19
cmp al, 0x2a
je 0x475c19
mov edi, dword [ebp + 0x14]
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x30]
push eax
push 0xa1
push 0xffff
push dword [edi + 0x74]
lea eax, [ebp + 8]
push ebx
push eax
call fcn.00477da0
add esp, 0x1c
test eax, eax
je 0x47598b
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp + 8]
test ecx, ecx
jle 0x4764d9
mov edx, dword [ebp + 0xc]
mov eax, esi
mov dword [edx], 0x80120000
sub eax, dword [edi + 0x1c]
sub eax, 2
mov dword [edx + 8], ecx
mov dword [edx + 4], eax
add edx, 8
mov dword [ebp - 0x3c], eax
jmp 0x475bfc
mov ecx, dword [ebp - 0x10]
test ecx, ecx
jne 0x476366
mov edi, dword [ebp + 8]
sub ebx, edi
cmp ebx, 0xa
jl 0x475ab4
push 7
push str.VERSION
push edi
call fcn.0046af30
add esp, 0xc
test eax, eax
jne 0x475ab4
cmp byte [edi + 7], 0x29
lea esi, [edi + 7]
je 0x475ab4
xor ebx, ebx
xor edi, edi
cmp byte [esi], 0x3e
mov eax, esi
mov dword [ebp - 0x18], ebx
jne 0x4759dd
inc esi
lea ebx, [edi + 1]
mov eax, esi
cmp byte [esi], 0x3d
jne 0x4764f0
lea esi, [eax + 1]
mov al, byte [esi]
mov dword [ebp + 8], esi
cmp al, 0x30
jb 0x4764f0
cmp al, 0x39
ja 0x4764f0
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x18]
push eax
push 0xb3
push 0x3e8
push 0xffffffffffffffff
push dword [ebp - 8]
lea eax, [ebp + 8]
push eax
call fcn.00477da0
add esp, 0x1c
test eax, eax
je 0x476479
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 8]
cmp esi, ecx
jae 0x4764f0
cmp byte [esi], 0x2e
jne 0x475a93
inc esi
cmp esi, ecx
jae 0x4764f0
mov al, byte [esi]
cmp al, 0x30
jb 0x4764f0
cmp al, 0x39
ja 0x4764f0
movzx eax, al
inc esi
sub eax, 0x30
lea edi, [eax + eax*4]
add edi, edi
cmp esi, ecx
jae 0x4764f0
mov al, byte [esi]
cmp al, 0x30
jb 0x475a8a
cmp al, 0x39
ja 0x475a8a
movzx eax, al
add eax, 0xffffffd0
add edi, eax
lea eax, [esi + 1]
mov esi, eax
cmp eax, ecx
jae 0x4764f0
cmp byte [esi], 0x29
jne 0x4764f0
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x18]
mov dword [edx], 0x80150000
mov dword [edx + 4], ebx
mov ebx, ecx
mov dword [edx + 8], eax
add edx, 0xc
mov dword [edx], edi
mov edi, dword [ebp + 0x14]
jmp 0x475bfc
mov al, byte [edi]
mov dword [ebp - 0x28], 0
cmp al, 0x52
jne 0x475ad9
cmp ebx, 1
jle 0x475af5
cmp byte [edi + 1], 0x26
lea eax, [edi + 1]
jne 0x475af5
mov ebx, 1
mov dword [ebp + 8], eax
jmp 0x475afc
cmp al, 0x3c
jne 0x475ae7
mov ebx, dword [ebp - 0x28]
mov esi, 0x3e
jmp 0x475b01
cmp al, 0x27
jne 0x475af5
mov ebx, dword [ebp - 0x28]
mov esi, 0x27
jmp 0x475b01
mov ebx, dword [ebp - 0x28]
dec edi
mov dword [ebp + 8], edi
mov esi, 0x29
mov edi, dword [ebp + 0x14]
lea eax, [ebp - 0x10]
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x3c]
push eax
push esi
push dword [ebp - 0x38]
lea eax, [ebp + 8]
push dword [ebp - 8]
push eax
call fcn.00477a60
add esp, 0x24
test eax, eax
je 0x476479
test ebx, ebx
mov ebx, dword [ebp - 0x2c]
je 0x475b49
mov edx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
dec esi
mov dword [edx], 0x80130000
jmp 0x475be3
cmp esi, 0x29
jne 0x475bd7
mov edi, dword [ebp - 0x44]
cmp ebx, 6
jne 0x475b81
push 6
push str.DEFINE
push edi
call fcn.0046af30
add esp, 0xc
test eax, eax
jne 0x475b81
mov edx, dword [ebp + 0xc]
mov eax, 0x80100000
mov edi, dword [ebp + 0x14]
mov dword [edx], eax
mov esi, dword [ebp + 8]
dec esi
jmp 0x475be3
mov eax, 1
mov dword [ebp - 0x30], 1
cmp ebx, eax
jle 0x475bb6
mov esi, eax
mov edx, eax
mov ecx, eax
mov cl, byte [edi + ecx]
cmp cl, 0x30
jb 0x475bb6
mov eax, edx
cmp cl, 0x39
ja 0x475bb6
lea eax, [esi + 1]
mov ecx, eax
mov dword [ebp - 0x30], eax
mov esi, eax
mov edx, eax
cmp ecx, ebx
jl 0x475b97
cmp byte [edi], 0x52
jne 0x475bc4
cmp eax, ebx
mov eax, 0x80140000
jge 0x475bc9
mov eax, 0x80110000
mov edx, dword [ebp + 0xc]
mov edi, dword [ebp + 0x14]
mov dword [edx], eax
mov esi, dword [ebp + 8]
dec esi
jmp 0x475be3
mov edx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov dword [edx], 0x80110000
mov eax, dword [edx]
add edx, 4
cmp eax, 0x80100000
je 0x475bf4
mov dword [edx], ebx
add edx, 4
mov eax, dword [ebp - 0x3c]
mov ebx, dword [ebp - 8]
mov dword [edx], eax
cmp esi, ebx
jae 0x476507
cmp byte [esi], 0x29
jne 0x476507
inc esi
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0d
mov dword [edx], 0x800f0000
mov esi, edi
mov edi, dword [ebp + 0x14]
add edx, 4
mov dword [ebp + 0xc], edx
mov dword [ebp - 0x54], 2
jmp 0x473e10
mov edx, dword [ebp + 0xc]
mov ebx, dword [ebp - 8]
mov ecx, dword [ebp - 4]
mov edi, dword [ebp + 0x14]
inc ecx
mov dword [edx], 0x80020000
add edx, 4
mov dword [ebp + 0xc], edx
inc esi
mov dword [ebp - 4], ecx
jmp 0x473e10
mov edx, dword [ebp + 0xc]
inc esi
mov ebx, dword [ebp - 8]
mov dword [edx], 0x80230000
jmp 0x475cf0
mov edi, dword [ebp - 0x14]
mov dword [edx], 0x80230000
inc esi
jmp 0x475cf0
mov edi, dword [ebp - 0x14]
mov dword [edx], 0x80270000
inc esi
jmp 0x475cf0
mov edi, dword [ebp - 0x14]
mov dword [edx], 0x80240000
inc esi
jmp 0x475cf0
mov eax, ebx
sub eax, esi
cmp eax, 1
jle 0x4756a6
mov al, byte [edi + 1]
cmp al, 0x3d
je 0x475cc2
cmp al, 0x21
je 0x475cb1
cmp al, 0x2a
jne 0x4756a6
cmp al, 0x21
mov edx, 0x80280000
mov eax, 0x80260000
cmove edx, eax
jmp 0x475cc7
mov edx, 0x80250000
mov edi, dword [ebp - 0x14]
mov eax, dword [ebp + 0xc]
lea ecx, [eax + 4]
mov dword [eax], edx
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [eax], 1
mov eax, esi
sub eax, dword [edx + 0x1c]
mov edx, ecx
sub eax, 2
add esi, 2
mov dword [ebp - 0x3c], eax
mov dword [ecx], eax
mov ecx, dword [ebp - 4]
add edx, 4
inc ecx
mov dword [ebp + 0xc], edx
mov dword [ebp - 4], ecx
test edi, edi
jle 0x475d3f
mov ecx, dword [ebp - 0x24]
test ecx, ecx
jne 0x475d13
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0x24], ecx
jmp 0x475d22
add ecx, 0xc
mov dword [ebp - 0x24], ecx
cmp ecx, dword [ebp - 0x74]
jae 0x4765e8
mov eax, dword [ebp - 4]
mov word [ecx], ax
mov eax, 2
mov word [ecx + 6], ax
mov eax, dword [ebp - 0x1c]
and eax, 0x10424e8
mov dword [ecx + 8], eax
mov ecx, dword [ebp - 4]
mov edi, dword [ebp + 0x14]
jmp 0x473e10
mov eax, 0x27
mov edi, dword [ebp + 0x14]
lea ecx, [ebp - 0x10]
push edi
push ecx
lea ecx, [ebp - 0x2c]
push ecx
lea ecx, [ebp - 0x44]
push ecx
lea ecx, [ebp - 0x3c]
push ecx
push eax
push dword [ebp - 0x38]
lea eax, [ebp + 8]
push ebx
push eax
call fcn.00477a60
add esp, 0x24
test eax, eax
je 0x476479
mov eax, dword [edi + 0x74]
cmp eax, 0xffff
jae 0x476586
mov edx, dword [ebp + 0xc]
inc eax
inc dword [ebp - 4]
mov ecx, 0x2710
mov dword [edi + 0x74], eax
or eax, 0x80080000
mov dword [edx], eax
add edx, 4
movzx eax, word [edi + 0x58]
mov dword [ebp + 0xc], edx
cmp ax, cx
jae 0x47656c
mov ecx, dword [ebp - 0x2c]
movzx eax, word [edi + 0x5a]
add ecx, 3
cmp ecx, eax
jbe 0x475dc8
mov eax, dword [ebp - 0x2c]
add eax, 3
mov word [edi + 0x5a], ax
mov ecx, dword [ebp + 0x14]
xor ebx, ebx
mov esi, dword [edi + 0x64]
xor edi, edi
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x30], ebx
movzx eax, word [ecx + 0x58]
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x34], ebx
cmp bx, ax
jae 0x475e59
nop dword [eax + eax]
movzx eax, word [esi + 8]
cmp ecx, eax
jne 0x475e33
push ecx
push dword [esi]
push dword [ebp - 0x44]
call fcn.0046af30
add esp, 0xc
test eax, eax
jne 0x475e33
mov ecx, dword [ebp + 0x14]
mov eax, dword [esi + 4]
cmp eax, dword [ecx + 0x74]
je 0x475e6f
test byte [ebp - 0x1c], 0x40
je 0x47651e
mov eax, 1
mov word [esi + 0xa], ax
mov dword [ebp - 0x18], eax
mov dword [ecx + 0xb8], eax
jmp 0x475e42
mov ecx, dword [ebp + 0x14]
mov eax, dword [esi + 4]
cmp eax, dword [ecx + 0x74]
je 0x476538
movzx eax, word [ecx + 0x58]
inc ebx
mov ecx, dword [ebp - 0x2c]
add esi, 0xc
mov dword [ebp - 0x30], ebx
mov edi, ebx
cmp ebx, eax
jl 0x475df0
mov edx, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x14]
movzx ecx, word [ecx + 0x58]
cmp edi, ecx
jge 0x475e7f
mov ebx, dword [ebp - 8]
mov esi, dword [ebp + 8]
jmp 0x473e0a
mov edx, dword [ebp + 0xc]
jmp 0x475e5c
mov edx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
jmp 0x473e0a
mov edi, dword [ebp + 0x14]
mov eax, dword [edi + 0x68]
cmp ecx, eax
jb 0x475eea
lea edi, [eax + eax]
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
lea eax, [edi + edi*2]
shl eax, 2
push dword [ecx + 8]
push eax
mov eax, dword [ecx]
call eax
mov esi, eax
add esp, 8
test esi, esi
je 0x476552
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + 0x68]
lea ecx, [ecx + ecx*2]
shl ecx, 2
push ecx
push dword [eax + 0x64]
push esi
call fcn.004a77d0
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ecx + 0x68], 0x14
jbe 0x475ee1
mov eax, dword [ecx]
push dword [eax + 8]
mov eax, dword [eax + 4]
push dword [ecx + 0x64]
call eax
mov ecx, dword [ebp + 0x14]
add esp, 8
mov dword [ecx + 0x68], edi
mov edi, dword [ebp + 0x14]
mov dword [ecx + 0x64], esi
movzx eax, word [edi + 0x58]
mov edx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x2c]
mov ebx, dword [ebp - 8]
lea ecx, [eax + eax*2]
mov eax, dword [edi + 0x64]
mov dword [eax + ecx*4], edx
movzx eax, word [edi + 0x58]
lea ecx, [eax + eax*2]
mov eax, dword [edi + 0x64]
mov word [eax + ecx*4 + 8], si
movzx eax, word [edi + 0x58]
mov ecx, dword [edi + 0x64]
mov esi, dword [ebp + 8]
lea edx, [eax + eax*2]
mov eax, dword [edi + 0x74]
mov dword [ecx + edx*4 + 4], eax
movzx eax, word [edi + 0x58]
mov edx, dword [ebp - 0x18]
lea ecx, [eax + eax*2]
mov eax, dword [edi + 0x64]
mov word [eax + ecx*4 + 0xa], dx
inc word [edi + 0x58]
mov edx, dword [ebp + 0xc]
jmp 0x473e0d
cmp cl, 0x2d
jne 0x475fd1
mov eax, ebx
sub eax, esi
cmp eax, 1
jle 0x475fd1
mov al, byte [edi + 1]
sub al, 0x30
cmp al, 9
ja 0x475fd1
mov edi, dword [ebp + 0x14]
mov eax, dword [edi + 0x74]
lea ecx, [ebp - 0x10]
push ecx
lea ecx, [ebp - 0x30]
push ecx
push 0xa1
push 0xffff
push eax
lea eax, [ebp + 8]
push ebx
push eax
call fcn.00477da0
add esp, 0x1c
test eax, eax
je 0x476479
mov eax, dword [ebp - 0x30]
mov esi, dword [ebp + 8]
test eax, eax
js 0x4765a0
cmp esi, ebx
jae 0x476697
cmp byte [esi], 0x29
jne 0x476697
mov edx, dword [ebp + 0xc]
or eax, 0x80200000
mov dword [ebp - 0x20], 1
mov dword [edx], eax
mov eax, esi
sub eax, dword [edi + 0x1c]
inc esi
mov dword [edx + 4], eax
add edx, 8
mov dword [ebp - 0x3c], eax
mov dword [ebp + 0xc], edx
jmp 0x473e0d
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x24]
inc ecx
mov dword [ebp - 4], ecx
test eax, eax
jne 0x475fea
mov edi, dword [ebp + 0x14]
mov eax, dword [edi + 0x14]
mov dword [ebp - 0x24], eax
jmp 0x475ffc
add eax, 0xc
mov dword [ebp - 0x24], eax
cmp eax, dword [ebp - 0x74]
jae 0x4765e8
mov edi, dword [ebp + 0x14]
mov ebx, dword [ebp - 0x24]
mov word [eax], cx
xor ecx, ecx
mov word [eax + 6], cx
mov ecx, dword [ebp - 0x1c]
mov eax, ecx
and eax, 0x10424e8
mov dword [ebx + 8], eax
cmp byte [esi], 0x7c
mov ebx, dword [ebp - 8]
jne 0x476052
mov ecx, dword [ebp - 0x24]
movzx eax, word [edi + 0x74]
mov word [ecx + 2], ax
movzx eax, word [edi + 0x74]
mov word [ecx + 4], ax
mov eax, 1
mov word [ecx + 6], ax
or dword [edi + 0x70], 0x200000
mov dword [edx], 0x801a0000
add edx, 4
mov dword [ebp + 0xc], edx
inc esi
jmp 0x473e0d
mov eax, dword [ebp - 0x24]
lea edx, [ebp - 0x18]
mov dword [ebp - 0x28], ecx
xor edi, edi
xor ecx, ecx
mov dword [ebp - 0x18], edi
mov ebx, 1
mov dword [ebp - 0x34], ecx
mov dword [eax + 2], ecx
mov eax, dword [ebp - 8]
cmp esi, eax
jae 0x476133
cmp byte [esi], 0x5e
jne 0x476087
and dword [ebp - 0x1c], 0xfeffdb57
xor ebx, ebx
inc esi
cmp esi, eax
jae 0x476133
mov edi, eax
mov al, byte [esi]
cmp al, 0x29
je 0x47612d
cmp al, 0x3a
je 0x47612d
movzx eax, al
inc esi
sub eax, 0x2d
cmp eax, 0x4b
ja case.0x4760ba.46
movzx eax, byte [eax + 0x4768bc]
jmp dword [eax*4 + 0x476898]
test ebx, ebx
je 0x4765b8
lea edx, [ebp - 0x34]
xor ebx, ebx
jmp 0x476123
mov eax, dword [ebp + 0x14]
or dword [edx], 0x40
or dword [eax + 0x70], 0x400
jmp 0x476123
or dword [edx], 8
jmp 0x476123
or dword [edx], 0x400
jmp 0x476123
or dword [edx], 0x2000
jmp 0x476123
or dword [edx], 0x20
jmp 0x476123
or dword [edx], 0x40000
jmp 0x476123
mov ecx, dword [edx]
mov eax, esi
or ecx, 0x80
mov dword [edx], ecx
cmp esi, edi
jae 0x476125
cmp byte [esi], 0x78
jne 0x476091
or ecx, 0x1000000
inc esi
mov dword [edx], ecx
mov eax, esi
cmp eax, edi
jb 0x476091
mov edi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x34]
mov eax, edi
and eax, 0x1000080
cmp eax, 0x80
je 0x476145
test cl, cl
jns 0x47614b
or ecx, 0x1000000
or edi, dword [ebp - 0x1c]
not ecx
mov ebx, dword [ebp - 8]
and ecx, edi
mov dword [ebp - 0x1c], ecx
cmp esi, ebx
jae 0x476697
mov al, byte [esi]
inc esi
mov edi, dword [ebp + 0x14]
cmp al, 0x29
jne 0x47619f
mov eax, dword [ebp - 0x84]
mov edx, dword [ebp - 0x24]
movzx eax, ax
mov dword [ebp - 4], eax
cmp edx, dword [edi + 0x14]
jbe 0x476197
mov ebx, dword [ebp - 4]
lea eax, [edx - 0xc]
cmp word [eax], bx
mov ebx, dword [ebp - 8]
jne 0x476194
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x24], eax
jmp 0x4761ae
mov eax, dword [ebp - 4]
mov word [edx], ax
mov edx, dword [ebp + 0xc]
jmp 0x4761ae
mov edx, dword [ebp + 0xc]
mov dword [edx], 0x801a0000
add edx, 4
mov dword [ebp + 0xc], edx
cmp ecx, dword [ebp - 0x28]
je 0x473e0d
mov dword [edx], 0x801b0000
mov dword [edx + 4], ecx
add edx, 8
mov dword [ebp + 0xc], edx
jmp 0x473e0d
mov ecx, dword [ebp - 0x24]
mov edi, dword [ebp + 0x14]
test ecx, ecx
je 0x4761fc
mov eax, dword [ebp - 4]
cmp word [ecx], ax
jne 0x4761fc
test byte [ecx + 6], 1
je 0x4761fc
mov ebx, dword [ebp - 0x24]
mov ecx, dword [edi + 0x74]
movzx eax, word [ebx + 4]
cmp ecx, eax
jbe 0x4761f5
mov word [ebx + 4], cx
movzx eax, word [ebx + 2]
mov dword [edi + 0x74], eax
mov ebx, dword [ebp - 8]
mov dword [edx], 0x80010000
add edx, 4
mov dword [ebp + 0xc], edx
jmp 0x473e0d
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x20], 1
test ecx, ecx
je 0x476285
mov eax, dword [ebp - 4]
cmp word [ecx], ax
jne 0x476285
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp + 0x14]
and ecx, 0xfefbdb17
or ecx, dword [eax + 8]
mov dword [ebp - 0x1c], ecx
mov ecx, eax
test byte [ecx + 6], 1
je 0x47624f
movzx eax, word [ecx + 4]
cmp eax, dword [edi + 0x74]
jbe 0x47624f
mov dword [edi + 0x74], eax
movzx eax, word [ecx + 6]
mov ebx, eax
not ebx
shr ebx, 1
and ebx, 1
mov dword [ebp - 0x20], ebx
test al, 4
je 0x47626c
mov dword [edx], 0x80190000
add edx, 4
cmp ecx, dword [edi + 0x14]
jne 0x47627a
mov dword [ebp - 0x24], 0
jmp 0x476288
sub ecx, 0xc
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x24], ecx
jmp 0x476288
mov edi, dword [ebp + 0x14]
mov ecx, dword [ebp - 4]
test cx, cx
je 0x4765ff
mov ebx, dword [ebp - 8]
add ecx, 0xffff
mov dword [edx], 0x80190000
add edx, 4
mov dword [ebp - 4], ecx
mov dword [ebp + 0xc], edx
jmp 0x473e10
mov eax, dword [ebp + 0x14]
mov ecx, 0x8c
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
dec esi
pop edi
mov ecx, 0xb0
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0x76
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
dec esi
pop edi
mov ecx, 0x6d
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov al, byte [esi]
xor ecx, ecx
dec esi
cmp al, 0x3a
mov eax, dword [ebp + 0x14]
setne cl
add ecx, 0x70
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
dec esi
pop edi
mov ecx, 0x71
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0x6b
mov esi, dword [ebp + 8]
dec esi
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0xab
mov eax, dword [ebp + 0x14]
mov esi, dword [ebp + 8]
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0x14]
mov ecx, 0x96
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
dec esi
pop edi
mov ecx, 0x6c
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0x6a
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x80270000
je 0x4763d8
cmp edx, 0x80280000
jne 0x4742e4
mov eax, dword [ebp + 0x14]
mov ecx, 0xc6
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0xbd
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0xc3
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0xa6
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0x8d
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0x9e
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0x81
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x10]
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0xb5
mov esi, dword [ebp - 0x18]
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0x8a
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0x8b
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0x73
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0xb3
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0x7c
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0x8f
mov esi, dword [ebp + 8]
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0xa5
mov esi, dword [ebp + 8]
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0x79
mov esi, dword [ebp + 8]
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0x95
mov esi, dword [ebp + 8]
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0x14]
mov ecx, 0xc5
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
dec esi
pop edi
mov ecx, 0x73
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
dec esi
pop edi
mov ecx, 0xc2
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
dec esi
pop edi
mov ecx, 0x6f
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0xb8
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x7a
mov eax, dword [ebp + 0x14]
dec esi
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, 0x77
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x64], 0
je 0x473d58
mov eax, dword [ebp + 0x14]
mov ecx, 0xa0
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test byte [ebp - 0x58], 4
je 0x476665
mov dword [ecx], 0x80190000
mov dword [ecx + 4], 0x80180005
add ecx, 8
cmp ecx, dword [ebp - 0x78]
jb 0x476681
mov eax, dword [ebp + 0x14]
mov ecx, 0xa3
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp word [ebp - 4], 0
mov dword [ecx], 0x80000000
jne 0x476697
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x72
mov eax, dword [ebp + 0x14]
pop edi
sub esi, dword [eax + 0x1c]
mov dword [eax + 0x54], esi
mov eax, ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret