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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa8
push ebx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 0x38], 0
xor eax, eax
mov dword [ebp - 0x7c], ecx
mov ebx, dword [ebp + 0x14]
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov edx, dword [ebx + 0x78]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x6c], eax
mov eax, dword [ebx + 0x7c]
mov dword [ebp - 8], ecx
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x74], ecx
mov ecx, dword [ebp + 0xc]
mov esi, ecx
shr esi, 0x13
mov dword [ebp - 0x84], eax
and esi, 1
xor eax, eax
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x58], eax
mov esi, ecx
mov eax, dword [ebx]
xor edi, edi
shr esi, 2
and esi, 1
mov dword [ebp - 0x70], edi
mov eax, dword [eax + 0x24]
mov dword [ebp - 0xc], edi
mov edi, dword [ebx + 0x20]
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x78], esi
mov dword [ebp + 0xc], edi
mov dword [ebp - 0x90], 0
test al, 8
je 0x4bb41e
mov dword [edx], 0x80090000
jmp 0x4bb428
test al, 4
je 0x4bb435
mov dword [edx], 0x80180005
mov dword [edx + 4], 0x801a0000
add edx, 8
mov dword [ebp - 4], edx
test ecx, 0x2000000
je 0x4bb62a
mov esi, dword [ebp + 8]
cmp esi, edi
jae 0x4bb5be
nop dword [eax]
cmp edx, dword [ebp - 0x84]
jae 0x4be08d
cmp dword [ebp - 0x3c], 0
mov edi, esi
movzx edx, byte [esi]
lea esi, [edi + 1]
je 0x4bb540
cmp edx, 0xc0
jb 0x4bb540
test dl, 0x20
jne 0x4bb493
movzx eax, byte [esi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
inc esi
jmp 0x4bb540
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4bb4ba
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x4bb540
test dl, 8
jne 0x4bb4dd
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 0x4bb540
test dl, 4
jne 0x4bb50c
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 0x4bb540
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 - 0x78], 0
je 0x4bb5a7
cmp dword [ebp - 0x4c], 0
mov ebx, dword [ebp - 4]
mov ecx, ebx
je 0x4bb57b
mov ebx, dword [ebp - 0x4c]
mov eax, edi
sub eax, dword [ebx + 4]
mov ebx, dword [ebp + 0x14]
sub eax, dword [ebx + 0x1c]
mov ebx, dword [ebp - 0x4c]
mov dword [ebx + 8], eax
mov ebx, ecx
lea eax, [ebx - 0x10]
cmp dword [ebp - 0x4c], eax
jne 0x4bb57b
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 0xc], 0xff
je 0x4bb594
mov eax, ebx
mov dword [ebx], 0x80060000
lea ecx, [ebx + 0x10]
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0xff
mov ebx, dword [ebp + 0x14]
mov dword [ebp - 0x4c], eax
sub edi, dword [ebx + 0x1c]
mov dword [eax + 4], edi
mov eax, ecx
mov dword [ebp - 4], eax
jmp 0x4bb5aa
mov eax, dword [ebp - 4]
mov dword [eax], edx
mov edx, dword [ebp - 4]
add edx, 4
mov dword [ebp - 4], edx
cmp esi, dword [ebp + 0xc]
jb 0x4bb450
mov edi, dword [ebp - 0x4c]
mov ecx, edx
test edi, edi
je 0x4bb5d2
mov eax, esi
sub eax, dword [edi + 4]
sub eax, dword [ebx + 0x1c]
mov dword [edi + 8], eax
cmp dword [ebp - 0x78], 0
je 0x4bb60d
test edi, edi
je 0x4bb5ec
lea eax, [edx - 0x10]
cmp edi, eax
jne 0x4bb5ec
cmp dword [edi + 0xc], 0xff
je 0x4bb605
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
mov eax, dword [ebp - 0x2c]
test al, 8
je 0x4be071
mov dword [ecx], 0x80190000
mov dword [ecx + 4], 0x80160000
jmp 0x4be082
mov eax, dword [ebx + 0x28]
mov esi, ecx
and eax, 0xfffffff0
mov dword [ebp - 0x20], 0
add eax, dword [ebx + 0x14]
or esi, 0x80
mov dword [ebp - 0x80], eax
mov eax, ecx
and eax, 0x1000000
mov dword [ebp - 0x18], esi
mov eax, esi
mov esi, dword [ebp + 8]
cmove eax, ecx
xor ecx, ecx
mov dword [ebp - 0x18], eax
jmp 0x4bb670
mov edi, dword [ebp + 0xc]
mov edx, dword [ebp - 4]
mov ebx, dword [ebp + 0x14]
mov ecx, dword [ebp - 8]
nop dword [eax]
movzx eax, cx
mov dword [ebp - 0xa0], eax
cmp esi, edi
jae 0x4be050
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x48], 0
cmp edx, dword [ebp - 0x84]
jae 0x4be08d
mov ecx, dword [ebx]
mov eax, dword [ebp - 8]
movzx eax, ax
cmp eax, dword [ecx + 0x20]
ja 0x4be039
mov ecx, dword [ebp - 0x38]
mov eax, ecx
movzx ebx, byte [esi]
cmp ecx, edx
mov dword [ebp - 0x1c], ebx
mov edi, ebx
cmove eax, dword [ebp - 0x28]
mov dword [ebp - 0x28], eax
mov eax, edx
mov edx, esi
cmove eax, ecx
cmp dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x24], eax
lea esi, [edx + 1]
mov dword [ebp - 0x64], edx
mov ecx, esi
mov dword [ebp + 8], esi
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x10], esi
je 0x4bb7e4
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x10], esi
cmp ebx, 0xc0
jb 0x4bb7e4
movzx ecx, byte [esi]
and ecx, 0x3f
test bl, 0x20
jne 0x4bb71e
mov eax, ebx
mov ebx, ecx
and eax, 0x1f
shl eax, 6
or ebx, eax
inc esi
mov ecx, esi
mov dword [ebp - 0x44], ecx
jmp 0x4bb7d9
movzx eax, byte [esi + 1]
and eax, 0x3f
test bl, 0x10
jne 0x4bb744
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add esi, 2
mov ecx, esi
mov dword [ebp - 0x44], ecx
jmp 0x4bb7d9
test bl, 8
jne 0x4bb76c
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
mov ecx, esi
mov dword [ebp - 0x44], ecx
jmp 0x4bb7d9
test bl, 4
jne 0x4bb7a0
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
mov ecx, esi
mov dword [ebp - 0x44], ecx
jmp 0x4bb7d9
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 ecx, esi
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x1c], ebx
mov edi, ebx
mov dword [ebp + 8], esi
mov dword [ebp - 0x10], esi
cmp dword [ebp - 0x54], 0
je 0x4bb88d
cmp edi, 0x5c
jne 0x4bb81d
mov edi, dword [ebp + 0xc]
cmp ecx, edi
jae 0x4bb81d
cmp byte [esi], 0x45
jne 0x4bb81d
mov edx, dword [ebp - 4]
lea esi, [ecx + 1]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x28], ecx
jmp 0x4bb666
cmp dword [ebp - 0x68], 0
jg case.0x4bbcab.34
cmp dword [ebp - 0x74], 0
je 0x4bb832
mov edx, dword [ebp - 4]
jmp 0x4bb86a
mov ecx, dword [ebp - 0x70]
mov eax, ecx
dec ecx
mov dword [ebp - 0x70], ecx
test eax, eax
jg 0x4bb860
push dword [ebp + 0x14]
mov edi, dword [ebp - 4]
lea eax, [ebp - 0x6c]
push edi
push dword [ebp - 0x78]
push eax
push edx
call fcn.004bb300
mov edx, eax
add esp, 0x14
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x4c], eax
jmp 0x4bb863
mov edx, dword [ebp - 4]
mov dword [ebp - 0xc], 1
mov ecx, dword [ebp - 0x24]
mov edi, dword [ebp + 0xc]
mov dword [edx], ebx
add edx, 4
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x58], 0
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], ecx
jmp 0x4bb666
cmp dword [ebp - 0x74], 0
je 0x4bba28
mov eax, dword [ebp - 0x18]
and eax, 0x400080
cmp eax, 0x400080
jne 0x4bb8f2
cmp edi, 0xff
jbe 0x4bb8c1
mov eax, edi
or eax, 1
cmp eax, 0x200f
je 0x4bb8c1
cmp eax, 0x2029
jne 0x4bb900
cmp edi, 0x100
jae 0x4bba28
cmp edi, 0x23
je 0x4bba5d
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x10]
test byte [ebx + eax], 1
jne 0x4bba28
cmp edi, 0x85
je 0x4bba5d
cmp edi, 0x29
je 0x4bb9cf
cmp edi, 0x5c
je 0x4bb922
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0x24]
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x28]
mov dword [edx], ebx
add edx, 4
mov ebx, dword [ebp + 0x14]
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], ecx
jmp 0x4bb669
mov eax, dword [ebp - 0x18]
test eax, 0x400000
je 0x4bb900
mov ebx, dword [ebp + 0x14]
push ebx
push 0
push dword [ebp - 0x2c]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x1c]
push eax
push dword [ebp + 0xc]
lea eax, [ebp + 8]
push eax
call fcn.004b4bf0
mov ecx, dword [ebp - 0x14]
add esp, 0x20
test ecx, ecx
jne 0x4bdd16
cmp eax, 0x1d
ja case.0x4bb968.1
movzx eax, byte [eax + 0x4be0e8]
jmp dword [eax*4 + 0x4be0d4]
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0x24]
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov dword [edx], 0x75
mov dword [edx + 4], 0x7b
add edx, 8
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 4], edx
mov dword [ebp - 0xc], 1
mov dword [ebp - 0x28], ecx
jmp 0x4bb669
mov dword [ebp - 0x54], 1
mov ecx, dword [ebp - 0x24]
mov esi, dword [ebp + 8]
mov edx, dword [ebp - 4]
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x28], ecx
jmp 0x4bb669
mov esi, dword [ebp + 8]
mov ebx, dword [ebp - 0x1c]
jmp 0x4bb900
mov eax, esi
mov dword [ebp - 0x74], 0
sub eax, dword [ebp - 0x90]
dec eax
cmp eax, 0xff
jg 0x4bdd2b
mov edx, dword [ebp - 4]
mov eax, edx
mov ecx, dword [ebp - 0x8c]
sub eax, ecx
sar eax, 2
dec eax
mov dword [ecx], eax
mov eax, dword [ebp - 0x7c]
test eax, eax
je 0x4bba11
mov dword [edx], eax
add edx, 4
xor ecx, ecx
mov dword [ebp - 4], edx
mov dword [ebp - 0x7c], ecx
mov ecx, dword [ebp - 0x24]
mov ebx, dword [ebp + 0x14]
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x28], ecx
jmp 0x4bb669
cmp edi, 0x5c
jne 0x4bba5d
cmp ecx, dword [ebp + 0xc]
jae 0x4bba5d
mov al, byte [esi]
cmp al, 0x51
je 0x4bba3c
cmp al, 0x45
jne 0x4bba5d
mov ebx, dword [ebp + 0x14]
lea esi, [ecx + 1]
mov ecx, dword [ebp - 0x28]
xor edx, edx
mov edi, dword [ebp + 0xc]
cmp al, 0x51
mov dword [ebp - 0x28], ecx
sete dl
mov dword [ebp - 0x54], edx
mov edx, dword [ebp - 4]
jmp 0x4bb669
test byte [ebp - 0x18], 0x80
je 0x4bbb9d
cmp edi, 0x100
jae 0x4bba85
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x38], ecx
mov eax, dword [eax + 0x10]
test byte [ebx + eax], 1
jne 0x4bb660
cmp edi, 0x85
je 0x4bbb83
mov eax, edi
or eax, 1
cmp eax, 0x200f
je 0x4bbb83
cmp eax, 0x2029
je 0x4bbb83
cmp edi, 0x23
jne 0x4bbb9d
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x14]
cmp esi, edi
jae 0x4bbb6f
mov ecx, dword [ebx + 0x8c]
mov eax, dword [ebx + 0x20]
test ecx, ecx
je 0x4bbaf2
cmp esi, eax
jae 0x4bbb18
push dword [ebp - 0x3c]
lea edi, [ebx + 0x90]
push edi
push eax
push ecx
push esi
call fcn.004d2bc0
add esp, 0x14
test eax, eax
jne 0x4bbb68
mov edi, dword [ebp + 0xc]
jmp 0x4bbb18
mov ecx, dword [ebx + 0x90]
sub eax, ecx
cmp esi, eax
ja 0x4bbb18
mov al, byte [esi]
cmp al, byte [ebx + 0x9c]
jne 0x4bbb18
cmp ecx, 1
je 0x4bbb6d
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x9d]
je 0x4bbb6d
inc esi
cmp dword [ebp - 0x3c], 0
mov eax, esi
je 0x4bbb4c
cmp esi, edi
jae 0x4bbb4c
mov ecx, esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4bbac3
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edi
jb 0x4bbb27
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 4]
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x28], ecx
jmp 0x4bb669
cmp eax, edi
jb 0x4bbac3
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 4]
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x28], ecx
jmp 0x4bb669
mov ecx, dword [edi]
mov edi, dword [ebp + 0xc]
add esi, ecx
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 4]
mov dword [ebp - 0x38], ecx
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x28], ecx
jmp 0x4bb669
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 4]
mov ebx, dword [ebp + 0x14]
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x28], ecx
jmp 0x4bb669
mov ecx, dword [ebp + 0xc]
cmp edi, 0x28
jne 0x4bbbe8
mov eax, ecx
sub eax, esi
cmp eax, 2
jl 0x4bbbe8
cmp byte [esi], 0x3f
jne 0x4bbbe8
cmp byte [esi + 1], 0x23
jne 0x4bbbe8
mov edi, ecx
nop dword [eax + eax]
inc esi
cmp esi, edi
jae 0x4bdd45
cmp byte [esi], 0x29
jne 0x4bbbc0
cmp esi, edi
jae 0x4bdd45
mov eax, dword [ebp - 0x24]
inc esi
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x28], ecx
jmp 0x4bb663
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x38], eax
cmp edi, 0x2a
je 0x4bbc5f
mov dword [ebp - 0x38], eax
cmp edi, 0x2b
je 0x4bbc5f
mov dword [ebp - 0x38], eax
cmp edi, 0x3f
je 0x4bbc5f
cmp edi, 0x7b
jne 0x4bbc2a
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x14]
push eax
push 0
push 0
push ecx
lea eax, [ebp - 0x60]
mov dword [ebp - 0x60], esi
push eax
call fcn.004bfbd0
add esp, 0x14
test eax, eax
jne 0x4bbc5f
mov edx, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x70]
mov eax, ecx
dec ecx
mov dword [ebp - 0x70], ecx
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x38], ecx
test eax, eax
jg 0x4bbc5f
push dword [ebp + 0x14]
lea eax, [ebp - 0x6c]
push dword [ebp - 4]
push dword [ebp - 0x78]
push eax
push edx
call fcn.004bb300
mov dword [ebp - 4], eax
add esp, 0x14
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x68]
test ecx, ecx
jle case.0x4bbcab.33
cmp edi, 0x28
jne case.0x4bbcab.34
mov eax, dword [ebp + 0xc]
sub eax, esi
cmp eax, 3
jl case.0x4bbcab.34
mov al, byte [esi]
cmp al, 0x3f
je 0x4bbc98
cmp al, 0x2a
jne case.0x4bbcab.34
mov eax, dword [ebp + 0x14]
movzx ecx, byte [esi + 1]
mov eax, dword [eax + 0x10]
movzx eax, byte [ecx + eax]
mov ecx, dword [ebp - 0x68]
shr eax, 2
and eax, 1
jmp 0x4bbcba
movzx eax, byte [esi + 1]
add eax, 0xffffffdf
cmp eax, 0x22
ja case.0x4bbcab.34
movzx eax, byte [eax + 0x4be118]
jmp dword [eax*4 + 0x4be108]
xor eax, eax
cmp ecx, 2
sete al
test eax, eax
jne case.0x4bbcab.33
mov esi, dword [ebp - 0x44]
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
mov al, byte [esi + 2]
cmp al, 0x3d
je case.0x4bbcab.33
cmp al, 0x21
jne case.0x4bbcab.34
mov eax, dword [ebp - 0x58]
mov edx, eax
mov edi, dword [ebp - 0xc]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x68], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x58], 0
test eax, eax
je 0x4bbd4a
cmp ebx, 0x3f
je 0x4bbd12
cmp ebx, 0x2b
jne 0x4bbd4a
mov edi, dword [ebp + 0xc]
cmp ebx, 0x3f
mov ecx, 0x10000
mov ebx, 0x20000
cmove ecx, ebx
add ecx, eax
xor eax, eax
cmp edx, 0x803d0000
mov edx, dword [ebp - 4]
setne al
lea eax, [eax*8 - 0xc]
mov dword [eax + edx], ecx
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x28], ecx
jmp 0x4bb666
lea eax, [ebx - 0x24]
cmp eax, 0x58
ja case.0x4bbd5d.37
movzx eax, byte [eax + 0x4be170]
jmp dword [eax*4 + 0x4be13c]
mov ebx, dword [ebp + 0x14]
lea eax, [ebp - 0x14]
push ebx
push 0
mov dword [ebp - 0x60], esi
mov esi, dword [ebp - 0x2c]
push esi
push dword [ebp - 0x18]
push eax
lea eax, [ebp - 0x1c]
push eax
push dword [ebp + 0xc]
lea eax, [ebp + 8]
push eax
call fcn.004b4bf0
mov ecx, dword [ebp - 0x14]
add esp, 0x20
mov edi, eax
test ecx, ecx
jne 0x4bbf9d
test edi, edi
je 0x4bc08e
js 0x4bc026
lea eax, [edi - 6]
cmp eax, 0x17
ja case.0x4bbdb9.13
movzx eax, byte [eax + 0x4be1e8]
jmp dword [eax*4 + 0x4be1cc]
test dword [ebp - 0x18], 0x100000
mov esi, dword [ebp + 8]
je 0x4bbdd9
mov ecx, 0xb7
mov dword [ebp - 0x14], ecx
jmp 0x4bbfa0
mov edx, dword [ebp - 4]
lea eax, [edi - 0x7fe80000]
mov edi, dword [ebp + 0xc]
mov ecx, dword [ebp - 8]
mov dword [ebp - 0xc], 1
mov dword [edx], eax
add edx, 4
mov eax, dword [ebp - 0x28]
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
push ebx
lea eax, [ebp - 0x14]
mov dword [ebp - 0x10], 0
push eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x94]
push eax
lea eax, [ebp + 8]
push eax
call fcn.004bab70
add esp, 0x18
test eax, eax
je 0x4bbf9a
cmp dword [ebp - 0x94], 0
je 0x4bbe4c
xor eax, eax
cmp edi, 0xf
sete al
lea edi, [eax + 0xf]
mov edx, dword [ebp - 4]
lea eax, [edi - 0x7fe80000]
movzx ecx, word [ebp - 0x10]
shl ecx, 0x10
mov dword [edx], eax
movzx eax, word [ebp - 0x24]
or ecx, eax
mov dword [edx + 4], ecx
add edx, 8
mov dword [ebp - 0xc], 1
mov eax, dword [ebp - 0x28]
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov ecx, dword [ebp - 8]
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov esi, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
cmp esi, edx
jae 0x4bbfc4
mov al, byte [esi]
cmp al, 0x7b
je 0x4bbea8
cmp al, 0x3c
je 0x4bbf0b
cmp al, 0x27
jne 0x4bbfc4
cmp al, 0x27
mov ebx, 0x7d
mov eax, 0x27
cmove ebx, eax
cmp edi, 0x1b
jne 0x4bbf29
cmp ebx, 0x7d
je 0x4bbf29
lea eax, [esi + 1]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x34]
push eax
mov eax, dword [ebp + 0x14]
push 0xa1
push 0xffff
push dword [eax + 0x70]
lea eax, [ebp - 0x10]
push edx
push eax
call fcn.004bfa80
add esp, 0x1c
test eax, eax
je 0x4bbf1f
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp + 0xc]
cmp ecx, edx
jae 0x4bbf12
movzx eax, byte [ecx]
cmp eax, ebx
jne 0x4bbf12
mov eax, dword [ebp - 0x34]
mov esi, ecx
jmp 0x4bd8c0
mov ebx, 0x3e
jmp 0x4bbeb7
mov ecx, 0x9d
mov dword [ebp - 0x14], ecx
jmp 0x4bbfa3
mov ecx, dword [ebp - 0x14]
test ecx, ecx
jne 0x4bbfa0
mov edx, dword [ebp + 0xc]
push dword [ebp + 0x14]
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
push ebx
push dword [ebp - 0x3c]
lea eax, [ebp + 8]
push edx
push eax
call fcn.004bf700
add esp, 0x24
test eax, eax
je 0x4bbf9a
cmp edi, 0x1c
je 0x4bbf60
mov eax, 0x80210000
cmp ebx, 0x7d
jne 0x4bbf65
mov eax, 0x80040000
mov edx, dword [ebp - 4]
mov dword [edx], eax
mov eax, dword [ebp - 0x30]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x40]
mov dword [edx + 8], eax
add edx, 0xc
mov esi, dword [ebp + 8]
mov dword [ebp - 0xc], 1
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x14]
mov ecx, dword [ebp - 8]
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov ecx, dword [ebp - 0x14]
mov esi, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
test byte [ebp - 0x2c], 2
je 0x4be0bf
mov eax, dword [ebp - 0x60]
mov esi, eax
cmp eax, edx
jb 0x4bc099
mov ecx, 0x5c
jmp 0x4bc18a
cmp edi, 0x1b
mov ecx, 0xa9
mov eax, 0x9d
cmove ecx, eax
mov dword [ebp - 0x14], ecx
jmp 0x4bbfa3
mov edx, dword [ebp - 4]
mov dword [edx], 0x75
mov dword [edx + 4], 0x7b
jmp 0x4bbe67
mov dword [ebp - 0xc], 1
mov edx, dword [ebp - 4]
lea eax, [edi - 0x7fe80000]
mov dword [edx], eax
add edx, 4
jmp 0x4bbe71
push esi
push dword [ebp - 0x18]
mov dword [ebp - 0xc], 1
push dword [ebp - 4]
push edi
call fcn.004bae90
add esp, 0x10
mov edx, eax
jmp 0x4bbe71
mov edx, dword [ebp - 4]
neg edi
mov esi, dword [ebp + 8]
mov eax, edi
mov ecx, esi
or eax, 0x80030000
sub ecx, dword [ebx + 0x1c]
dec ecx
mov dword [edx], eax
add edx, 4
mov dword [ebp - 0x40], ecx
mov dword [ebp - 4], edx
cmp edi, 0xa
jge 0x4bc06e
cmp dword [ebx + edi*4 + 0x2c], 0xffffffff
jne 0x4bc076
mov eax, dword [ebp - 0x28]
mov dword [ebx + edi*4 + 0x2c], ecx
mov edi, dword [ebp + 0xc]
mov ecx, dword [ebp - 8]
mov dword [ebp - 0xc], 1
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov dword [edx], ecx
add edx, 4
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp + 0xc]
mov ecx, dword [ebp - 8]
mov dword [ebp - 0xc], 1
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x1c]
jmp 0x4bc18a
cmp dword [ebp - 0x3c], 0
lea esi, [eax + 1]
movzx ecx, byte [eax]
je 0x4bc18a
cmp ecx, 0xc0
jb 0x4bc18a
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x4bc0ce
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x4bc18a
test cl, 0x10
jne 0x4bc0ef
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x4bc18a
test cl, 8
jne 0x4bc119
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x4bc18a
test cl, 4
jne 0x4bc14f
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x4bc18a
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov edx, dword [ebp - 4]
mov dword [edx], ecx
mov eax, dword [ebp - 0x28]
add edx, 4
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x14]
mov ecx, dword [ebp - 8]
mov dword [ebp - 4], edx
mov dword [ebp - 0xc], 1
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x14]
mov ecx, dword [ebp - 8]
mov dword [edx], 0x80090000
add edx, 4
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x14]
mov ecx, dword [ebp - 8]
mov dword [edx], 0x80160000
add edx, 4
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov edx, dword [ebp - 4]
mov dword [edx], 0x80170000
jmp 0x4bc18f
mov dword [ebp - 0x58], 0x80340000
jmp 0x4bc25d
mov dword [ebp - 0x58], 0x80370000
jmp 0x4bc25d
mov dword [ebp - 0x58], 0x803a0000
jmp 0x4bc25d
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x5c]
push eax
push dword [ebp + 0xc]
lea eax, [ebp + 8]
push eax
call fcn.004bfbd0
add esp, 0x14
test eax, eax
jne 0x4bc253
mov ecx, dword [ebp - 0x14]
test ecx, ecx
jne 0x4bdd16
mov edx, dword [ebp - 4]
mov dword [edx], ebx
add edx, 4
jmp 0x4bbf79
mov esi, dword [ebp + 8]
mov dword [ebp - 0x58], 0x803d0000
test edi, edi
je 0x4bdd5c
mov edi, dword [ebp - 0x28]
mov edx, dword [ebp - 4]
cmp dword [edi], 0x802a0000
jne 0x4bc29c
mov edi, dword [ebp - 0x88]
lea ecx, [edx - 4]
cmp ecx, edi
jb 0x4bc28c
mov eax, dword [ecx]
mov dword [ecx + 4], eax
sub ecx, 4
cmp ecx, edi
jae 0x4bc280
mov dword [edi], 0x801a0000
mov dword [edx + 4], 0x80190000
add edx, 8
mov eax, dword [ebp - 0x58]
mov edi, dword [ebp + 0xc]
mov ecx, dword [ebp - 8]
mov dword [edx], eax
add edx, 4
cmp ebx, 0x7b
mov dword [ebp - 4], edx
mov ebx, dword [ebp + 0x14]
jne 0x4bdd06
mov eax, dword [ebp - 0x5c]
mov dword [edx], eax
mov eax, dword [ebp - 0x48]
mov dword [edx + 4], eax
add edx, 8
mov eax, dword [ebp - 0x28]
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov ecx, dword [ebp + 0xc]
mov eax, ecx
sub eax, esi
mov dword [ebp - 0xc], 1
cmp eax, 6
jl 0x4bc38e
push 6
push 0x5037e0
push esi
call fcn.004d0ff0
add esp, 0xc
test eax, eax
je 0x4bc314
push 6
push str._:_:__
push esi
call fcn.004d0ff0
add esp, 0xc
test eax, eax
jne 0x4bc38b
mov ecx, dword [ebp - 4]
mov dword [ecx], 0x80180005
lea eax, [ecx + 8]
cmp byte [esi + 2], 0x3c
jne 0x4bc32f
mov dword [ecx + 4], 0x80230000
jmp 0x4bc348
mov dword [ecx + 4], 0x80250000
mov ecx, dword [ebp + 0x10]
mov dword [ecx], 1
mov dword [eax], 0
add eax, 4
test dword [ebp - 0x18], 0x20000
lea edx, [eax + 4]
jne 0x4bc36b
mov dword [eax], 0x8018000b
mov dword [edx], 0x80190000
add edx, 4
add esi, 6
jmp 0x4bbf83
mov dword [eax], 0x80180010
mov dword [edx], 0x90000
add edx, 4
mov dword [edx], 0x80190000
add edx, 4
add esi, 6
jmp 0x4bbf83
mov ecx, dword [ebp + 0xc]
cmp esi, ecx
jae 0x4bc3b9
mov al, byte [esi]
cmp al, 0x3a
je 0x4bc3a0
cmp al, 0x2e
je 0x4bc3a0
cmp al, 0x3d
jne 0x4bc3b9
lea eax, [ebp - 0x60]
push eax
push ecx
push esi
call fcn.004b6380
add esp, 0xc
test eax, eax
jne 0x4bdd74
mov ecx, dword [ebp + 0xc]
xor edx, edx
mov dword [ebp - 0x10], edx
cmp esi, ecx
jae 0x4bc53a
movzx ebx, byte [esi]
inc esi
cmp dword [ebp - 0x3c], 0
mov eax, ebx
mov dword [ebp - 0x1c], ebx
mov ecx, eax
mov dword [ebp + 8], esi
mov edi, esi
je 0x4bc4c7
cmp ebx, 0xc0
jb 0x4bc4c7
movzx ebx, byte [esi]
and ebx, 0x3f
test al, 0x20
jne 0x4bc404
and eax, 0x1f
shl eax, 6
or ebx, eax
inc esi
jmp 0x4bc4bd
test al, 0x10
jne 0x4bc424
and eax, 0xf
shl eax, 6
or ebx, eax
movzx eax, byte [esi + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 2
jmp 0x4bc4bd
test al, 8
jne 0x4bc44d
and eax, 7
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 0x4bc4bd
test al, 4
jne 0x4bc482
and eax, 3
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
movzx eax, byte [esi + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 4
jmp 0x4bc4bd
and eax, 1
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
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 - 0x1c], ebx
mov ecx, ebx
mov dword [ebp + 8], esi
mov edi, esi
cmp ecx, 0x5c
jne 0x4bc50b
mov ecx, dword [ebp + 0xc]
cmp edi, ecx
jae 0x4bc4e0
cmp byte [esi], 0x45
jne 0x4bc4e0
lea esi, [edi + 1]
mov dword [ebp + 8], esi
jmp 0x4bc532
mov eax, ecx
sub eax, edi
cmp eax, 3
jl 0x4bc53a
push 3
push 0x5037f0
push esi
call fcn.004d0ff0
mov edx, dword [ebp - 0x10]
add esp, 0xc
test eax, eax
jne 0x4bc53a
mov ecx, dword [ebp + 0xc]
lea esi, [edi + 3]
mov dword [ebp + 8], esi
jmp 0x4bc532
test dword [ebp - 0x18], 0x1000000
je 0x4bc51e
cmp ecx, 0x20
je 0x4bc52f
cmp ecx, 9
je 0x4bc52f
test edx, edx
jne 0x4bc53a
cmp ecx, 0x5e
jne 0x4bc53a
mov edx, 1
mov dword [ebp - 0x10], edx
mov ecx, dword [ebp + 0xc]
cmp esi, ecx
jb 0x4bc3c6
cmp ebx, 0x5d
jne 0x4bc564
mov eax, dword [ebp + 0x14]
test byte [eax + 0x68], 1
je 0x4bc564
test edx, edx
mov eax, 0x800b0000
mov edx, dword [ebp - 4]
mov ecx, 0x800c0000
cmovne eax, ecx
mov dword [edx], eax
add edx, 4
jmp 0x4bbf83
test edx, edx
mov ecx, 0x800e0000
mov edx, dword [ebp - 4]
mov eax, 0x800a0000
cmovne eax, ecx
mov dword [edx], eax
add edx, 4
mov eax, dword [ebp - 0x54]
xor ecx, ecx
mov dword [ebp - 4], edx
mov dword [ebp - 0xc], ecx
jmp 0x4bc58b
mov ecx, dword [ebp - 0xc]
mov edi, 1
test eax, eax
je 0x4bc5bc
cmp ebx, 0x5c
jne 0x4bc93d
cmp esi, dword [ebp + 0xc]
jae 0x4bc93d
cmp byte [esi], 0x45
jne 0x4bc93d
mov dword [ebp - 0x54], 0
inc esi
jmp 0x4bc727
mov eax, dword [ebp - 0x18]
test eax, 0x1000000
je 0x4bc5d8
cmp ebx, 0x20
je 0x4bc727
cmp ebx, 9
je 0x4bc727
cmp ebx, 0x5b
jne 0x4bc7a0
mov eax, dword [ebp + 0xc]
sub eax, esi
cmp eax, 3
jl 0x4bc93d
mov al, byte [esi]
cmp al, 0x3a
je 0x4bc601
cmp al, 0x2e
je 0x4bc601
cmp al, 0x3d
jne 0x4bc93d
lea eax, [ebp - 0x60]
push eax
push dword [ebp + 0xc]
push esi
call fcn.004b6380
add esp, 0xc
test eax, eax
je 0x4bc937
mov dword [ebp - 0x10], 0
cmp dword [ebp - 0xc], edi
je 0x4bdde6
cmp byte [esi], 0x3a
jne 0x4bdd96
inc esi
mov edx, esi
cmp byte [esi], 0x5e
jne 0x4bc640
inc esi
mov dword [ebp - 0x10], edi
mov edx, esi
mov ecx, dword [ebp - 0x60]
mov ebx, 0x503268
sub ecx, edx
xor edi, edi
mov dword [ebp - 0x64], ecx
nop
movzx eax, byte [edi + 0x503580]
cmp ecx, eax
jne 0x4bc66f
push ecx
push ebx
push edx
call fcn.004d0ff0
add esp, 0xc
test eax, eax
je 0x4bc69a
mov ecx, dword [ebp - 0x64]
mov edx, esi
movzx eax, byte [edi + 0x503580]
inc ebx
inc edi
add ebx, eax
cmp byte [edi + 0x503580], 0
jne 0x4bc650
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 0x4bc683
mov esi, dword [ebp - 0x60]
mov eax, dword [ebp + 0xc]
add esi, 2
dec eax
cmp esi, eax
jae 0x4bc6bb
cmp byte [esi], 0x2d
jne 0x4bc6bb
cmp byte [esi + 1], 0x5d
jne 0x4bdde6
xor ecx, ecx
test dword [ebp - 0x18], 0x20000
mov dword [ebp - 0xc], ecx
je 0x4bc78b
mov eax, dword [ebp - 0x2c]
test eax, 0x800
jne 0x4bc78b
test eax, 0x1000
je 0x4bc6f4
cmp edi, 7
je 0x4bc78b
cmp edi, 0xd
je 0x4bc78b
mov eax, dword [edi*8 + 0x6a8f08]
mov ecx, dword [edi*8 + 0x6a8f0c]
test eax, eax
js 0x4bc772
mov edx, dword [ebp - 0x10]
mov edi, dword [ebp - 4]
xor edx, 1
sub edx, 0x7fe7fff1
shl eax, 0x10
or eax, ecx
mov dword [edi], edx
mov edx, edi
mov dword [edx + 4], eax
add edx, 8
mov dword [ebp - 4], edx
mov edi, dword [ebp - 0xc]
cmp esi, dword [ebp + 0xc]
jae 0x4bde15
movzx ebx, byte [esi]
inc esi
cmp dword [ebp - 0x3c], 0
mov eax, ebx
mov dword [ebp - 0x1c], ebx
mov ecx, eax
mov dword [ebp + 8], esi
je 0x4bcb65
cmp eax, 0xc0
jb 0x4bcb65
movzx ebx, byte [esi]
and ebx, 0x3f
test al, 0x20
jne 0x4bcaa4
and eax, 0x1f
shl eax, 6
or ebx, eax
inc esi
jmp 0x4bcb5d
test ecx, ecx
je 0x4bc78b
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 4]
xor eax, 1
sub eax, 0x7fe7ffee
mov dword [edx], eax
add edx, 4
jmp 0x4bc724
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 4]
add eax, 0x801c
shl eax, 0x10
mov dword [edx], eax
mov dword [edx + 4], edi
jmp 0x4bc721
cmp ebx, 0x2d
jne 0x4bc7ce
cmp ecx, 2
jb 0x4bc93d
cmp ecx, 3
mov dword [ebp - 0xc], edi
mov eax, 0x801e0000
mov ecx, 0x801f0000
cmove eax, ecx
mov dword [edx], eax
add edx, 4
mov dword [ebp - 4], edx
jmp 0x4bc72a
cmp ebx, 0x5c
jne 0x4bc93d
push dword [ebp + 0x14]
mov ebx, dword [ebp + 0xc]
push 1
push dword [ebp - 0x2c]
mov dword [ebp - 0x60], esi
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp + 8]
push ebx
push eax
call fcn.004b4bf0
mov ecx, dword [ebp - 0x14]
add esp, 0x20
mov edi, eax
test ecx, ecx
je 0x4bc91a
test byte [ebp - 0x2c], 2
je 0x4bdd16
cmp esi, ebx
jb 0x4bc820
mov ebx, 0x5c
jmp 0x4bc935
cmp dword [ebp - 0x3c], 0
lea ecx, [esi + 1]
movzx ebx, byte [esi]
mov esi, ecx
je 0x4bc935
cmp ebx, 0xc0
jb 0x4bc935
movzx eax, byte [esi]
and eax, 0x3f
test bl, 0x20
jne 0x4bc859
and ebx, 0x1f
lea esi, [ecx + 1]
shl ebx, 6
or ebx, eax
jmp 0x4bc935
test bl, 0x10
jne 0x4bc87a
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 1]
shl ebx, 6
lea esi, [ecx + 2]
and eax, 0x3f
or ebx, eax
jmp 0x4bc935
test bl, 8
jne 0x4bc8a7
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
lea esi, [ecx + 3]
and eax, 0x3f
or ebx, eax
jmp 0x4bc935
test bl, 4
jne 0x4bc8dd
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 3]
shl ebx, 6
lea esi, [ecx + 4]
and eax, 0x3f
or ebx, eax
jmp 0x4bc935
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 4]
shl ebx, 6
lea esi, [ecx + 5]
and eax, 0x3f
or ebx, eax
jmp 0x4bc935
cmp edi, 0x1a
ja case.0x4bc928.1
mov edi, eax
movzx eax, byte [eax + 0x4be218]
jmp dword [eax*4 + 0x4be200]
mov esi, dword [ebp + 8]
mov ebx, dword [ebp - 0x1c]
xor edi, edi
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0xc]
cmp ecx, 1
jne 0x4bca91
cmp ebx, dword [edx - 8]
jne 0x4bca65
sub edx, 4
xor edi, edi
mov dword [ebp - 4], edx
mov dword [ebp - 0xc], edi
jmp 0x4bc72a
mov esi, dword [ebp + 8]
mov ebx, 8
xor edi, edi
jmp 0x4bc937
mov dword [ebp - 0x54], 1
mov esi, dword [ebp + 8]
mov edx, dword [ebp - 4]
jmp 0x4bc727
cmp dword [ebp - 0xc], 1
je 0x4bdde3
xor eax, eax
mov dword [ebp - 0xc], eax
lea eax, [edi - 6]
cmp eax, 0xf
ja case.0x4bc99f.13
movzx eax, byte [eax + 0x4be248]
jmp dword [eax*4 + 0x4be234]
mov edx, dword [ebp - 4]
lea eax, [edi - 0x7fe80000]
mov dword [edx], eax
add edx, 4
jmp 0x4bca3c
push dword [ebp - 0x2c]
push dword [ebp - 0x18]
push dword [ebp - 4]
push edi
call fcn.004bae90
add esp, 0x10
mov dword [ebp - 4], eax
mov edx, eax
jmp 0x4bca3f
push dword [ebp + 0x14]
lea eax, [ebp - 0x14]
mov dword [ebp - 0x48], 0
push eax
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x5c], 0
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp + 8]
push eax
call fcn.004bab70
add esp, 0x18
test eax, eax
je 0x4bde9c
cmp dword [ebp - 0x98], 0
je 0x4bca1e
xor eax, eax
cmp edi, 0xf
sete al
lea edi, [eax + 0xf]
mov edx, dword [ebp - 4]
lea eax, [edi - 0x7fe80000]
movzx ecx, word [ebp - 0x48]
shl ecx, 0x10
mov dword [edx], eax
movzx eax, word [ebp - 0x5c]
or ecx, eax
mov dword [edx + 4], ecx
add edx, 8
mov dword [ebp - 4], edx
mov esi, dword [ebp + 8]
lea eax, [ebx - 1]
cmp esi, eax
jae 0x4bc727
cmp byte [esi], 0x2d
jne 0x4bc727
cmp byte [esi + 1], 0x5d
jne 0x4bdde6
jmp 0x4bc727
jb 0x4bddfd
test edi, edi
jne 0x4bca7f
cmp dword [edx - 4], 0x801f0000
jne 0x4bca7f
mov dword [edx - 4], 0x801e0000
mov dword [edx], ebx
add edx, 4
xor edi, edi
mov dword [ebp - 4], edx
mov dword [ebp - 0xc], edi
jmp 0x4bc72a
add edi, 2
mov dword [edx], ebx
add edx, 4
mov dword [ebp - 0xc], edi
mov dword [ebp - 4], edx
jmp 0x4bc72a
test al, 0x10
jne 0x4bcac4
and eax, 0xf
shl eax, 6
or ebx, eax
movzx eax, byte [esi + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 2
jmp 0x4bcb5d
test al, 8
jne 0x4bcaed
and eax, 7
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 0x4bcb5d
test al, 4
jne 0x4bcb22
and eax, 3
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
movzx eax, byte [esi + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 4
jmp 0x4bcb5d
and eax, 1
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
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 - 0x1c], ebx
mov ecx, ebx
mov dword [ebp + 8], esi
mov eax, dword [ebp - 0x54]
cmp ecx, 0x5d
jne 0x4bc588
test eax, eax
jne 0x4bc588
cmp edi, 1
jne 0x4bcb85
mov dword [edx - 4], 0x2d
mov dword [edx], 0x800d0000
add edx, 4
jmp 0x4bbf7c
mov edi, dword [ebp + 0xc]
cmp esi, edi
jae 0x4be0ba
mov al, byte [esi]
cmp al, 0x3f
je 0x4bcf31
cmp al, 0x2a
je 0x4bcc11
inc dword [ebp - 8]
test dword [ebp - 0x18], 0x2000
jne 0x4bcbf0
mov ebx, dword [ebp + 0x14]
mov ecx, dword [ebx + 0x70]
cmp ecx, 0xffff
jae 0x4bdfab
mov edx, dword [ebp - 4]
inc ecx
mov eax, dword [ebp - 0x28]
mov dword [ebx + 0x70], ecx
or ecx, 0x80080000
mov ebx, dword [ebp + 0x14]
mov dword [edx], ecx
add edx, 4
mov ecx, dword [ebp - 8]
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov edx, dword [ebp - 4]
mov ecx, 0x801a0000
mov eax, dword [ebp - 0x28]
mov ebx, dword [ebp + 0x14]
mov dword [ebp - 0x28], eax
mov dword [edx], ecx
add edx, 4
mov ecx, dword [ebp - 8]
mov dword [ebp - 4], edx
jmp 0x4bb670
mov eax, edi
sub eax, esi
cmp eax, 1
jle 0x4bdcfd
movzx ecx, byte [esi + 1]
cmp ecx, 0x29
je 0x4bdcfd
mov edx, dword [ebp + 0x14]
mov ebx, edi
push edx
mov eax, dword [edx + 0x10]
test byte [ecx + eax], 4
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
push 0
push dword [ebp - 0x3c]
lea eax, [ebp + 8]
push ebx
push eax
je 0x4bce1b
mov dword [ebp - 0x64], 0x503108
call fcn.004bf700
add esp, 0x24
test eax, eax
je 0x4bde9c
mov esi, dword [ebp + 8]
mov dword [ebp - 0x44], esi
cmp esi, ebx
jae 0x4bde57
cmp byte [esi], 0x3a
jne 0x4bde57
mov esi, dword [ebp - 0x64]
xor edi, edi
mov dword [ebp - 0x34], edi
xor ebx, ebx
mov eax, dword [ebp - 0x30]
cmp eax, dword [edi*8 + 0x5031e0]
jne 0x4bccad
push eax
push esi
push dword [ebp - 0x50]
call fcn.004d0ff0
add esp, 0xc
test eax, eax
je 0x4bccc0
inc esi
add esi, dword [edi*8 + 0x5031e0]
inc edi
mov dword [ebp - 0x34], edi
mov ebx, edi
cmp edi, 0x11
jl 0x4bcc90
mov esi, dword [ebp - 0x44]
cmp ebx, 0x11
jge 0x4bde57
mov edx, dword [edi*8 + 0x5031e4]
mov edi, dword [ebp - 0x24]
test edi, edi
jle 0x4bcceb
lea eax, [edx + 0x7fdd0000]
cmp eax, 0x30000
ja 0x4bde2c
cmp edx, 0x80250000
ja 0x4bcd6c
je 0x4bcd98
cmp edx, 0x80230000
ja 0x4bcd49
je 0x4bd56a
cmp edx, 0x80020000
je case.0x4bcf5d.62
cmp edx, 0x80220000
jne 0x4bcd55
mov edx, dword [ebp - 4]
inc esi
mov ecx, dword [ebp - 8]
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x14]
movzx eax, cx
mov dword [edx], 0x80220000
add edx, 4
inc eax
mov dword [ebp - 4], edx
movzx ecx, ax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 8], ecx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
cmp edx, 0x80240000
je 0x4bd591
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
cmp edx, 0x80280000
ja 0x4bcd9e
je 0x4bcd98
cmp edx, 0x80260000
je 0x4bcd98
cmp edx, 0x80270000
jne 0x4bcd55
mov edx, dword [ebp - 4]
inc esi
mov ebx, dword [ebp + 0x14]
mov dword [edx], 0x80270000
jmp 0x4bd5ff
dec esi
jmp 0x4bd5d9
cmp edx, 0x8fff0000
jne 0x4bcd55
mov edx, dword [ebp - 4]
inc esi
mov ebx, dword [ebp - 8]
mov ecx, dword [ebp - 0x20]
inc ebx
mov dword [ebp - 8], ebx
mov dword [edx], 0x80220000
mov dword [edx + 4], 0x80020000
add edx, 8
mov dword [ebp - 4], edx
test ecx, ecx
jne 0x4bcdd6
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0x20], ecx
jmp 0x4bcde5
add ecx, 0x10
mov dword [ebp - 0x20], ecx
cmp ecx, dword [ebp - 0x80]
jae 0x4be00a
mov edi, dword [ebp + 0xc]
mov eax, 4
mov word [ecx + 6], ax
mov eax, dword [ebp - 0x18]
and eax, 0x10424e8
mov word [ecx], bx
mov ebx, dword [ebp + 0x14]
mov dword [ecx + 8], eax
mov eax, dword [ebp - 0x2c]
and eax, 0x1f80
mov dword [ecx + 0xc], eax
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 8]
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov dword [ebp - 0x10], 0x503068
call fcn.004bf700
add esp, 0x24
test eax, eax
je 0x4bde9c
mov esi, dword [ebp + 8]
mov dword [ebp - 0x44], esi
cmp esi, ebx
jae 0x4be05a
mov al, byte [esi]
cmp al, 0x3a
je 0x4bce4e
cmp al, 0x29
jne 0x4be05a
mov ecx, dword [ebp - 0x10]
xor edi, edi
mov dword [ebp - 0x34], edi
xor esi, esi
mov ebx, 0x503098
nop dword [eax]
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebx]
jne 0x4bce7b
push eax
push ecx
push dword [ebp - 0x50]
call fcn.004d0ff0
add esp, 0xc
test eax, eax
je 0x4bce8f
mov ecx, dword [ebp - 0x10]
inc ecx
inc edi
add ecx, dword [ebx]
mov esi, edi
add ebx, 0xc
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x34], edi
cmp edi, 9
jl 0x4bce60
cmp esi, 9
mov esi, dword [ebp - 0x44]
jge 0x4be05a
cmp byte [esi], 0x3a
jne 0x4bceae
lea eax, [esi + 1]
cmp eax, dword [ebp + 0xc]
jae 0x4bceae
cmp byte [eax], 0x29
cmove esi, eax
lea ecx, [edi + edi*2]
mov edi, dword [ecx*4 + 0x5030a0]
test edi, edi
jle 0x4bcec5
cmp byte [esi], 0x3a
jne 0x4bde6e
mov ecx, dword [ecx*4 + 0x50309c]
xor eax, eax
mov ebx, dword [ebp - 4]
cmp ecx, 0x802a0000
mov dword [ebp - 0x88], ebx
sete al
mov dword [ebp - 0xc], eax
mov al, byte [esi]
lea edx, [ebx + 4]
inc esi
cmp al, 0x3a
jne 0x4bcf2a
test edi, edi
jns 0x4bcefb
mov dword [ebp - 0x7c], ecx
mov eax, 0x80290000
jmp 0x4bcf0d
xor eax, eax
mov edi, 0x10000
cmp ecx, 0x80290000
cmovne eax, edi
add eax, ecx
mov dword [ebp - 0x8c], edx
add edx, 4
mov dword [ebx], eax
mov dword [ebp - 0x90], esi
mov dword [ebp - 0x74], 1
jmp 0x4bbf83
mov dword [ebx], ecx
jmp 0x4bbf83
mov edi, dword [ebp - 0x10]
mov ebx, dword [ebp + 0xc]
inc edi
mov esi, edi
mov dword [ebp + 8], esi
cmp edi, ebx
jae 0x4be0ba
mov cl, byte [esi]
movzx eax, cl
add eax, 0xffffffdf
cmp eax, 0x31
ja case.0x4bcf5d.34
movzx eax, byte [eax + 0x4be290]
jmp dword [eax*4 + 0x4be258]
lea esi, [edi + 1]
mov edi, ebx
mov dword [ebp + 8], esi
cmp esi, edi
jae 0x4be0ba
mov al, byte [esi]
cmp al, 0x3c
jne 0x4bcf84
mov eax, 0x3e
jmp 0x4bd672
cmp al, 0x3e
je 0x4bd052
cmp al, 0x3d
jne 0x4bde85
mov ebx, dword [ebp + 0x14]
lea eax, [ebp - 0x14]
push ebx
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
push 0x29
push dword [ebp - 0x3c]
lea eax, [ebp + 8]
push edi
push eax
call fcn.004bf700
add esp, 0x24
test eax, eax
je 0x4bde9c
mov edx, dword [ebp - 4]
mov dword [edx], 0x80040000
mov eax, dword [ebp - 0x30]
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 8]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x40]
mov dword [edx + 8], eax
add edx, 0xc
mov eax, dword [ebp - 0x28]
mov dword [ebp - 4], edx
mov dword [ebp - 0xc], 1
mov dword [ebp - 0x28], eax
jmp 0x4bb670
xor eax, eax
lea esi, [edi + 1]
mov dword [ebp - 0x34], eax
cmp esi, ebx
jae 0x4bd00a
cmp byte [esi], 0x29
je 0x4bd8c0
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, ebx
sub eax, edi
cmp eax, 2
jl 0x4bd039
mov al, byte [esi + 1]
cmp al, 0x30
jb 0x4bd039
cmp al, 0x39
jbe case.0x4bcf5d.48
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 edi, ebx
mov ebx, dword [ebp + 0x14]
lea eax, [ebp - 0x14]
push ebx
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
push 0x29
push dword [ebp - 0x3c]
lea eax, [ebp + 8]
push edi
push eax
call fcn.004bf700
add esp, 0x24
test eax, eax
je 0x4bde9c
mov edx, dword [ebp - 4]
mov dword [edx], 0x80210000
jmp 0x4bcfcb
lea edx, [edi + 1]
mov esi, edx
cmp edx, ebx
jae 0x4be0ba
mov eax, dword [ebp - 0x24]
mov ebx, dword [ebp - 0x4c]
dec eax
mov ecx, dword [ebp - 4]
mov dword [ebp - 0x68], eax
test ebx, ebx
je 0x4bd0c6
test byte [ebp - 0x18], 4
je 0x4bd0c6
lea eax, [ecx - 0x10]
cmp ebx, eax
jne 0x4bd0c6
cmp dword [ecx - 4], 0xff
cmove ecx, ebx
mov dword [ebp - 4], ecx
mov bl, byte [esi]
mov eax, ecx
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x70], 1
cmp bl, 0x29
je 0x4bd17b
cmp bl, 0x30
jb 0x4bd0ee
cmp bl, 0x39
jbe 0x4bd17b
mov ecx, dword [0x520454]
xor eax, eax
mov dword [ebp - 0x34], eax
test ecx, ecx
je 0x4bd113
movzx edi, bl
cmp edi, ecx
je 0x4bd12a
mov ecx, dword [eax*4 + 0x520458]
inc eax
mov dword [ebp - 0x34], eax
test ecx, ecx
jne 0x4bd100
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 [eax*4 + 0x520344]
test ecx, ecx
je 0x4bd113
mov ebx, dword [ebp - 4]
mov edi, dword [ebp + 0xc]
mov dword [ebx], 0x80070000
inc esi
cmp esi, edi
jae 0x4bdeb4
movzx eax, byte [esi]
cmp eax, ecx
jne 0x4bd141
inc esi
cmp esi, edi
jae 0x4bd15d
movzx eax, byte [esi]
cmp eax, ecx
je 0x4bd141
mov eax, esi
mov ecx, esi
sub eax, edx
mov dword [ebx + 0xc], eax
add ebx, 0x10
mov eax, dword [ebp + 0x14]
mov dword [ebp - 4], ebx
sub edx, dword [eax + 0x1c]
mov dword [ebp - 0x40], edx
mov dword [ebx], edx
mov edx, ebx
jmp 0x4bd1c8
xor edi, edi
mov dword [ecx], 0x80060000
add ecx, 0xc
mov dword [ebp - 4], ecx
nop dword [eax]
mov al, byte [esi]
mov ecx, edx
cmp al, 0x30
jb 0x4bd1c0
cmp al, 0x39
ja 0x4bd1c0
lea ecx, [edi - 6]
movzx eax, al
lea ecx, [edi + ecx*4]
lea esi, [edx + 1]
lea edi, [eax + ecx*2]
mov ecx, esi
cmp edi, 0xff
jg 0x4bdecd
mov edx, esi
cmp esi, dword [ebp + 0xc]
jb 0x4bd190
mov edx, dword [ebp - 4]
mov dword [edx], edi
mov edi, dword [ebp + 0xc]
cmp ecx, edi
jae 0x4bdee4
cmp byte [esi], 0x29
jne 0x4bdee4
mov ebx, dword [ebp + 0x14]
lea esi, [ecx + 1]
mov ecx, dword [ebp - 0x4c]
mov eax, esi
sub eax, dword [ebx + 0x1c]
add edx, 4
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x28]
mov dword [ecx + 8], 0
mov ecx, dword [ebp - 8]
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
lea esi, [edi + 1]
mov dword [ebp + 8], esi
cmp esi, ebx
jae 0x4be0ba
mov ecx, dword [ebp - 8]
mov al, byte [esi]
inc ecx
mov dword [ebp - 8], ecx
cmp al, 0x3f
je 0x4bd517
cmp al, 0x2a
je 0x4bd517
mov ebx, dword [ebp + 0x14]
lea eax, [ebp - 0x14]
mov edi, dword [ebp + 0xc]
push eax
lea eax, [ebp - 0x34]
push eax
push 0xa1
push 0xffff
push dword [ebx + 0x70]
lea eax, [ebp + 8]
push edi
push eax
call fcn.004bfa80
add esp, 0x1c
test eax, eax
je 0x4bd288
mov ecx, dword [ebp - 0x34]
mov esi, dword [ebp + 8]
test ecx, ecx
jle 0x4bdefb
mov edx, dword [ebp - 4]
mov eax, esi
mov dword [edx], 0x80120000
sub eax, dword [ebx + 0x1c]
sub eax, 2
mov dword [edx + 8], ecx
mov dword [edx + 4], eax
add edx, 8
mov dword [ebp - 0x40], eax
jmp 0x4bd4f1
mov ecx, dword [ebp - 0x14]
test ecx, ecx
jne 0x4bdd16
mov ebx, edi
mov edi, dword [ebp + 8]
sub ebx, edi
cmp ebx, 0xa
jl 0x4bd3b1
push 7
push str.VERSION
push edi
call fcn.004d0ff0
add esp, 0xc
test eax, eax
jne 0x4bd3b1
cmp byte [edi + 7], 0x29
lea esi, [edi + 7]
je 0x4bd3b1
xor ebx, ebx
xor edi, edi
cmp byte [esi], 0x3e
mov eax, esi
mov dword [ebp - 0x48], ebx
jne 0x4bd2dc
inc esi
lea ebx, [edi + 1]
mov eax, esi
cmp byte [esi], 0x3d
jne 0x4bdf12
lea esi, [eax + 1]
mov al, byte [esi]
mov dword [ebp + 8], esi
cmp al, 0x30
jb 0x4bdf12
cmp al, 0x39
ja 0x4bdf12
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x48]
push eax
push 0xb3
push 0x3e8
push 0xffffffffffffffff
push dword [ebp + 0xc]
lea eax, [ebp + 8]
push eax
call fcn.004bfa80
add esp, 0x1c
test eax, eax
je 0x4bde9c
mov esi, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
cmp esi, edx
jae 0x4bdf12
cmp byte [esi], 0x2e
jne 0x4bd392
inc esi
cmp esi, edx
jae 0x4bdf12
mov al, byte [esi]
cmp al, 0x30
jb 0x4bdf12
cmp al, 0x39
ja 0x4bdf12
movzx eax, al
inc esi
sub eax, 0x30
lea edi, [eax + eax*4]
add edi, edi
cmp esi, edx
jae 0x4bdf12
mov al, byte [esi]
cmp al, 0x30
jb 0x4bd389
cmp al, 0x39
ja 0x4bd389
movzx eax, al
lea ecx, [esi + 1]
add eax, 0xffffffd0
mov esi, ecx
add edi, eax
cmp ecx, edx
jae 0x4bdf12
cmp byte [esi], 0x29
jne 0x4bdf12
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x48]
mov dword [edx], 0x80150000
mov dword [edx + 4], ebx
mov dword [edx + 8], eax
add edx, 0xc
mov dword [edx], edi
mov edi, dword [ebp + 0xc]
jmp 0x4bd4ee
mov al, byte [edi]
mov dword [ebp - 0x10], 0
cmp al, 0x52
jne 0x4bd3d6
cmp ebx, 1
jle 0x4bd3f2
cmp byte [edi + 1], 0x26
lea eax, [edi + 1]
jne 0x4bd3f2
mov ebx, 1
mov dword [ebp + 8], eax
jmp 0x4bd3f9
cmp al, 0x3c
jne 0x4bd3e4
mov ebx, dword [ebp - 0x10]
mov esi, 0x3e
jmp 0x4bd3fe
cmp al, 0x27
jne 0x4bd3f2
mov ebx, dword [ebp - 0x10]
mov esi, 0x27
jmp 0x4bd3fe
mov ebx, dword [ebp - 0x10]
dec edi
mov dword [ebp + 8], edi
mov esi, 0x29
push dword [ebp + 0x14]
mov edi, dword [ebp + 0xc]
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x40]
push eax
push esi
push dword [ebp - 0x3c]
lea eax, [ebp + 8]
push edi
push eax
call fcn.004bf700
add esp, 0x24
test eax, eax
je 0x4bde9c
test ebx, ebx
mov ebx, dword [ebp - 0x30]
je 0x4bd446
mov edx, dword [ebp - 4]
mov esi, dword [ebp + 8]
dec esi
mov dword [edx], 0x80130000
jmp 0x4bd4d8
cmp esi, 0x29
jne 0x4bd4cc
mov edi, dword [ebp - 0x50]
cmp ebx, 6
jne 0x4bd47e
push 6
push str.DEFINE
push edi
call fcn.004d0ff0
add esp, 0xc
test eax, eax
jne 0x4bd47e
mov edx, dword [ebp - 4]
mov eax, 0x80100000
mov edi, dword [ebp + 0xc]
mov dword [edx], eax
mov esi, dword [ebp + 8]
dec esi
jmp 0x4bd4d8
mov eax, 1
mov dword [ebp - 0x34], eax
mov ecx, eax
cmp ebx, eax
jle 0x4bd4ab
mov esi, eax
nop
mov dl, byte [edi + eax]
mov ecx, esi
cmp dl, 0x30
jb 0x4bd4ab
cmp dl, 0x39
ja 0x4bd4ab
inc eax
mov dword [ebp - 0x34], eax
mov ecx, eax
mov esi, ecx
cmp eax, ebx
jl 0x4bd490
cmp byte [edi], 0x52
jne 0x4bd4b9
mov eax, 0x80140000
cmp ecx, ebx
jge 0x4bd4be
mov eax, 0x80110000
mov edx, dword [ebp - 4]
mov edi, dword [ebp + 0xc]
mov dword [edx], eax
mov esi, dword [ebp + 8]
dec esi
jmp 0x4bd4d8
mov edx, dword [ebp - 4]
mov esi, dword [ebp + 8]
mov dword [edx], 0x80110000
mov eax, dword [edx]
add edx, 4
cmp eax, 0x80100000
je 0x4bd4e9
mov dword [edx], ebx
add edx, 4
mov eax, dword [ebp - 0x40]
mov dword [edx], eax
mov ebx, dword [ebp + 0x14]
cmp esi, edi
jae 0x4bdf29
cmp byte [esi], 0x29
jne 0x4bdf29
mov eax, dword [ebp - 0x28]
inc esi
mov ecx, dword [ebp - 8]
add edx, 4
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov edx, dword [ebp - 4]
mov esi, edi
mov eax, dword [ebp - 0x28]
mov edi, ebx
mov ebx, dword [ebp + 0x14]
mov dword [ebp - 0x68], 2
mov dword [edx], 0x800f0000
add edx, 4
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x28]
inc ecx
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x14]
mov dword [edx], 0x80020000
add edx, 4
mov dword [ebp - 4], edx
inc esi
mov dword [ebp - 8], ecx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov edi, dword [ebp - 0x24]
mov edx, dword [ebp - 4]
inc esi
mov ebx, dword [ebp + 0x14]
mov dword [edx], 0x80230000
jmp 0x4bd5ff
mov edi, dword [ebp - 0x24]
mov edx, dword [ebp - 4]
inc esi
mov ebx, dword [ebp + 0x14]
mov dword [edx], 0x80270000
jmp 0x4bd5ff
mov edi, dword [ebp - 0x24]
mov edx, dword [ebp - 4]
inc esi
mov ebx, dword [ebp + 0x14]
mov dword [edx], 0x80240000
jmp 0x4bd5ff
mov eax, ebx
sub eax, edi
cmp eax, 1
jle 0x4bd664
mov al, byte [esi + 1]
cmp al, 0x3d
je 0x4bd5d1
cmp al, 0x21
je 0x4bd5c0
cmp al, 0x2a
jne 0x4bd664
cmp al, 0x21
mov edx, 0x80280000
mov eax, 0x80260000
cmove edx, eax
jmp 0x4bd5d6
mov edx, 0x80250000
mov edi, dword [ebp - 0x24]
mov eax, dword [ebp - 4]
mov ebx, dword [ebp + 0x14]
lea ecx, [eax + 4]
mov dword [eax], edx
mov edx, ecx
mov eax, dword [ebp + 0x10]
mov dword [eax], 1
mov eax, esi
sub eax, dword [ebx + 0x1c]
sub eax, 2
add esi, 2
mov dword [ebp - 0x40], eax
mov dword [ecx], eax
mov ecx, dword [ebp - 8]
add edx, 4
inc ecx
mov dword [ebp - 4], edx
mov dword [ebp - 8], ecx
test edi, edi
jle 0x4bd656
mov ecx, dword [ebp - 0x20]
test ecx, ecx
jne 0x4bd61f
mov ecx, dword [ebx + 0x14]
mov dword [ebp - 0x20], ecx
jmp 0x4bd62e
add ecx, 0x10
mov dword [ebp - 0x20], ecx
cmp ecx, dword [ebp - 0x80]
jae 0x4be00a
mov eax, dword [ebp - 8]
mov word [ecx], ax
mov eax, 2
mov word [ecx + 6], ax
mov eax, dword [ebp - 0x18]
and eax, 0x10424e8
mov dword [ecx + 8], eax
mov eax, dword [ebp - 0x2c]
and eax, 0x1f80
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov eax, 0x3e
jmp 0x4bd670
mov eax, 0x27
mov edi, ebx
mov ebx, dword [ebp + 0x14]
lea ecx, [ebp - 0x14]
push ebx
push ecx
lea ecx, [ebp - 0x30]
push ecx
lea ecx, [ebp - 0x50]
push ecx
lea ecx, [ebp - 0x40]
push ecx
push eax
push dword [ebp - 0x3c]
lea eax, [ebp + 8]
push edi
push eax
call fcn.004bf700
add esp, 0x24
test eax, eax
je 0x4bde9c
mov eax, dword [ebx + 0x70]
cmp eax, 0xffff
jae 0x4bdfa8
mov ecx, dword [ebp - 4]
inc eax
inc dword [ebp - 8]
mov dword [ebx + 0x70], eax
or eax, 0x80080000
mov dword [ecx], eax
add ecx, 4
movzx edx, word [ebx + 0x58]
mov eax, 0x2710
mov dword [ebp - 4], ecx
cmp dx, ax
jae 0x4bdf8e
mov ecx, dword [ebp - 0x30]
movzx eax, word [ebx + 0x5a]
add ecx, 3
cmp ecx, eax
mov ecx, dword [ebp - 0x30]
jbe 0x4bd6ee
lea eax, [ecx + 3]
mov word [ebx + 0x5a], ax
mov esi, dword [ebx + 0x60]
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0x48], 0
xor edi, edi
mov dword [ebp - 0x34], ebx
cmp ax, dx
jae 0x4bd76c
movzx eax, word [esi + 8]
cmp ecx, eax
jne 0x4bd749
push ecx
push dword [esi]
push dword [ebp - 0x50]
call fcn.004d0ff0
add esp, 0xc
test eax, eax
jne 0x4bd749
mov ecx, dword [ebp + 0x14]
mov eax, dword [esi + 4]
cmp eax, dword [ecx + 0x70]
je 0x4bd76c
test byte [ebp - 0x18], 0x40
je 0x4bdf40
mov eax, 1
mov word [esi + 0xa], ax
mov dword [ebp - 0x48], eax
mov dword [ecx + 0xb8], eax
jmp 0x4bd758
mov ecx, dword [ebp + 0x14]
mov eax, dword [esi + 4]
cmp eax, dword [ecx + 0x70]
je 0x4bdf5a
movzx eax, word [ecx + 0x58]
inc ebx
mov ecx, dword [ebp - 0x30]
add esi, 0xc
mov dword [ebp - 0x34], ebx
mov edi, ebx
cmp ebx, eax
jl 0x4bd706
mov ebx, dword [ebp + 0x14]
movzx eax, word [ebx + 0x58]
mov ecx, eax
cmp edi, ecx
jl 0x4bd822
mov edx, dword [ebx + 0x64]
cmp ecx, edx
jb 0x4bd7da
mov ecx, dword [ebx]
lea edi, [edx + edx]
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 0x4bdf74
mov ecx, dword [ebx + 0x64]
lea ecx, [ecx + ecx*2]
shl ecx, 2
push ecx
push dword [ebx + 0x60]
push esi
call fcn.004dd8a5
add esp, 0xc
cmp dword [ebx + 0x64], 0x14
jbe 0x4bd7d0
mov eax, dword [ebx]
push dword [eax + 8]
mov eax, dword [eax + 4]
push dword [ebx + 0x60]
call eax
add esp, 8
movzx eax, word [ebx + 0x58]
mov dword [ebx + 0x60], esi
mov dword [ebx + 0x64], edi
mov edx, dword [ebp - 0x50]
mov esi, dword [ebp - 0x30]
movzx eax, ax
lea ecx, [eax + eax*2]
mov eax, dword [ebx + 0x60]
mov dword [eax + ecx*4], edx
movzx eax, word [ebx + 0x58]
lea ecx, [eax + eax*2]
mov eax, dword [ebx + 0x60]
mov word [eax + ecx*4 + 8], si
movzx eax, word [ebx + 0x58]
mov ecx, dword [ebx + 0x60]
lea edx, [eax + eax*2]
mov eax, dword [ebx + 0x70]
mov dword [ecx + edx*4 + 4], eax
movzx eax, word [ebx + 0x58]
mov edx, dword [ebp - 0x48]
lea ecx, [eax + eax*2]
mov eax, dword [ebx + 0x60]
mov word [eax + ecx*4 + 0xa], dx
inc word [ebx + 0x58]
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 4]
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov ecx, dword [ebp - 8]
mov dword [ebp - 0x28], eax
jmp 0x4bb670
cmp cl, 0x2d
jne 0x4bd8f7
mov eax, ebx
sub eax, edi
cmp eax, 1
jle 0x4bd8f7
mov al, byte [esi + 1]
cmp al, 0x30
jb 0x4bd8f7
cmp al, 0x39
ja 0x4bd8f7
cmp cl, 0x30
jb 0x4bd873
cmp cl, 0x39
ja 0x4bd873
mov eax, 0xffffffff
jmp 0x4bd879
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x70]
lea ecx, [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x34]
push ecx
push 0xa1
push 0xffff
push eax
lea eax, [ebp + 8]
push ebx
push eax
call fcn.004bfa80
add esp, 0x1c
test eax, eax
je 0x4bde9c
mov eax, dword [ebp - 0x34]
mov esi, dword [ebp + 8]
test eax, eax
js 0x4bdfc2
cmp esi, ebx
jae 0x4be0ba
cmp byte [esi], 0x29
jne 0x4be0ba
mov edx, dword [ebp - 4]
or eax, 0x80200000
mov ebx, dword [ebp + 0x14]
mov edi, dword [ebp + 0xc]
mov ecx, dword [ebp - 8]
mov dword [edx], eax
mov eax, esi
sub eax, dword [ebx + 0x1c]
inc esi
mov dword [edx + 4], eax
add edx, 8
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 4], edx
mov dword [ebp - 0xc], 1
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0x20]
inc eax
mov dword [ebp - 8], eax
test edx, edx
jne 0x4bd910
mov ebx, dword [ebp + 0x14]
mov edx, dword [ebx + 0x14]
mov dword [ebp - 0x20], edx
jmp 0x4bd91f
add edx, 0x10
mov dword [ebp - 0x20], edx
cmp edx, dword [ebp - 0x80]
jae 0x4be00a
mov ecx, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x20]
mov word [edx], ax
xor eax, eax
mov word [edx + 6], ax
mov eax, ecx
and eax, 0x10424e8
mov dword [edx + 8], eax
mov edx, dword [ebp - 0x2c]
mov eax, edx
and eax, 0x1f80
mov dword [ebx + 0xc], eax
cmp byte [esi], 0x7c
mov ebx, dword [ebp + 0x14]
jne 0x4bd993
mov ecx, dword [ebp - 0x20]
lea esi, [edi + 1]
movzx eax, word [ebx + 0x70]
mov edx, dword [ebp - 4]
mov edi, dword [ebp + 0xc]
mov word [ecx + 2], ax
movzx eax, word [ebx + 0x70]
mov word [ecx + 4], ax
mov eax, 1
mov word [ecx + 6], ax
or dword [ebx + 0x6c], 0x200000
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 8]
mov dword [edx], 0x801a0000
add edx, 4
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov eax, dword [ebp - 0x20]
xor ebx, ebx
mov dword [ebp - 0xa4], ecx
xor ecx, ecx
mov dword [ebp - 0xa8], edx
lea edx, [ebp - 0x24]
mov dword [ebp - 0x10], 1
mov dword [eax + 2], ecx
xor eax, eax
cmp byte [esi], 0x5e
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], eax
jne 0x4bda78
and dword [ebp - 0x18], 0xfeffdb57
lea esi, [edi + 1]
and dword [ebp - 0x2c], 0xffffff7f
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x10], eax
cmp esi, edi
jb 0x4bda80
mov ecx, eax
mov edx, eax
mov edi, eax
mov eax, ecx
and eax, 0x1000080
cmp eax, 0x80
je 0x4bda10
test bl, bl
jns 0x4bda16
or ebx, 0x1000000
or edx, dword [ebp - 0x2c]
not edi
or ecx, dword [ebp - 0x18]
and edx, edi
mov edi, dword [ebp + 0xc]
not ebx
and ecx, ebx
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x18], ecx
cmp esi, edi
jae 0x4be0ba
mov al, byte [esi]
inc esi
mov ebx, dword [ebp + 0x14]
cmp al, 0x29
jne 0x4bdb8e
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x20]
movzx eax, ax
mov dword [ebp - 8], eax
cmp edx, dword [ebx + 0x14]
jbe 0x4bdb86
mov edi, dword [ebp - 8]
lea eax, [edx - 0x10]
cmp word [eax], di
mov edi, dword [ebp + 0xc]
jne 0x4bdb83
mov edx, dword [ebp - 4]
mov dword [ebp - 0x20], eax
jmp 0x4bdb9d
mov edi, dword [ebp + 0xc]
nop dword [eax + eax]
mov al, byte [esi]
cmp al, 0x29
je 0x4bdb72
cmp al, 0x3a
je 0x4bdb72
movzx eax, al
inc esi
sub eax, 0x2d
cmp eax, 0x4b
ja case.0x4bdaa9.46
movzx eax, byte [eax + 0x4be2f0]
jmp dword [eax*4 + 0x4be2c4]
cmp dword [ebp - 0x10], ebx
je 0x4bdfda
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x10], ebx
lea edx, [ebp - 0x44]
jmp 0x4bdb6a
cmp esi, edi
jae 0x4bdb0f
mov al, byte [esi]
cmp al, 0x44
jne 0x4bdadc
or dword [edx], 0x100
jmp 0x4bdb69
cmp al, 0x50
jne 0x4bdaeb
or dword [edx], 0x1800
jmp 0x4bdb69
cmp al, 0x53
jne 0x4bdaf7
or dword [edx], 0x200
jmp 0x4bdb69
cmp al, 0x54
jne 0x4bdb03
or dword [edx], 0x1000
jmp 0x4bdb69
cmp al, 0x57
jne 0x4bdb0f
or dword [edx], 0x400
jmp 0x4bdb69
or dword [edx], 0x1f00
jmp 0x4bdb6a
mov eax, dword [ebp + 0x14]
or dword [ecx], 0x40
or dword [eax + 0x6c], 0x400
jmp 0x4bdb6a
or dword [ecx], 8
jmp 0x4bdb6a
or dword [ecx], 0x400
jmp 0x4bdb6a
or dword [ecx], 0x2000
jmp 0x4bdb6a
or dword [edx], 0x80
jmp 0x4bdb6a
or dword [ecx], 0x20
jmp 0x4bdb6a
or dword [ecx], 0x40000
jmp 0x4bdb6a
mov eax, dword [ecx]
or eax, 0x80
mov dword [ecx], eax
cmp esi, edi
jae 0x4bdb72
cmp byte [esi], 0x78
jne 0x4bdb6a
or eax, 0x1000000
mov dword [ecx], eax
inc esi
cmp esi, edi
jb 0x4bda80
mov ecx, dword [ebp - 0x48]
mov ebx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x44]
jmp 0x4bd9fe
mov eax, dword [ebp - 8]
mov word [edx], ax
mov edx, dword [ebp - 4]
jmp 0x4bdb9d
mov edx, dword [ebp - 4]
mov dword [edx], 0x801a0000
add edx, 4
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x2c]
cmp ecx, dword [ebp - 0xa4]
jne 0x4bdbb4
cmp eax, dword [ebp - 0xa8]
je 0x4bdd03
mov dword [edx], 0x801b0000
mov dword [edx + 4], ecx
mov ecx, dword [ebp - 8]
mov dword [edx + 8], eax
add edx, 0xc
mov eax, dword [ebp - 0x28]
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov ecx, dword [ebp - 0x20]
mov ebx, dword [ebp + 0x14]
test ecx, ecx
je 0x4bdc05
mov eax, dword [ebp - 8]
cmp word [ecx], ax
jne 0x4bdc05
test byte [ecx + 6], 1
je 0x4bdc05
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebx + 0x70]
movzx eax, word [edx + 4]
cmp ecx, eax
jbe 0x4bdbfe
mov word [edx + 4], cx
movzx eax, word [edx + 2]
mov dword [ebx + 0x70], eax
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp + 0xc]
mov ecx, dword [ebp - 8]
mov dword [edx], 0x80010000
add edx, 4
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0xc], 1
test ecx, ecx
je 0x4bdcbb
mov eax, dword [ebp - 8]
cmp word [ecx], ax
jne 0x4bdcbb
mov eax, dword [ebp - 0x18]
mov edi, dword [ebp - 0x20]
and eax, 0xfefbdb17
or eax, dword [ecx + 8]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x2c]
and eax, 0xffffe07f
or eax, dword [ecx + 0xc]
movzx ecx, word [ecx + 6]
mov dword [ebp - 0x2c], eax
mov eax, ecx
test cl, 1
je 0x4bdc82
mov ecx, dword [ebp + 0x14]
movzx edx, word [edi + 4]
cmp edx, dword [ecx + 0x70]
jbe 0x4bdc85
mov dword [ecx + 0x70], edx
movzx eax, word [edi + 6]
jmp 0x4bdc85
mov ecx, dword [ebp + 0x14]
mov ebx, eax
not ebx
shr ebx, 1
and ebx, 1
mov dword [ebp - 0xc], ebx
test al, 4
je 0x4bdca4
mov eax, dword [ebp - 4]
mov dword [eax], 0x80190000
add eax, 4
mov dword [ebp - 4], eax
cmp edi, dword [ecx + 0x14]
jne 0x4bdcb2
mov dword [ebp - 0x20], 0
jmp 0x4bdcbb
sub edi, 0x10
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x20], edi
mov ecx, dword [ebp - 8]
test cx, cx
je 0x4be021
mov edx, dword [ebp - 4]
add ecx, 0xffff
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x14]
mov dword [edx], 0x80190000
add edx, 4
mov dword [ebp - 8], ecx
mov dword [ebp - 4], edx
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov edx, dword [ebp - 4]
mov dword [edx], ebx
add edx, 4
jmp 0x4bbf7c
mov edx, dword [ebp - 4]
mov ebx, dword [ebp + 0x14]
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x28], eax
jmp 0x4bb670
mov ecx, 0x8c
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 eax, dword [ebp + 0x14]
lea esi, [ecx - 1]
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
mov esi, dword [ebp - 0x44]
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 eax, dword [ebp + 0x14]
mov ecx, 0xab
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 0x4bde40
cmp edx, 0x80280000
jne 0x4bbcc2
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, 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 esi, dword [ebp + 8]
mov ecx, 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
mov eax, dword [ebp + 0x14]
mov esi, edx
pop edi
mov ecx, 0xb5
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 - 0x74], 0
je 0x4bb5be
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 al, 4
je 0x4be085
mov dword [ecx], 0x80190000
mov dword [ecx + 4], 0x80180005
add ecx, 8
cmp ecx, dword [ebp - 0x84]
jb 0x4be0a4
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 - 8], 0
mov dword [ecx], 0x80000000
jne 0x4be0ba
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