Function at 0x5c6a20
Capabilities:
Encode data using base64
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x80
mov ecx, dword [esp + 0x90]
push ebx
push ebp
push esi
mov edx, dword [ecx + 0x80]
xor eax, eax
mov dword [esp + 0x68], edx
mov edx, dword [ecx]
push edi
mov edi, dword [esp + 0x98]
mov dword [esp + 0x48], eax
mov ebx, dword [edx + 0x24]
mov edx, edi
mov esi, dword [ecx + 0x20]
shr edx, 0x13
and edx, 1
mov ebp, dword [ecx + 0x7c]
mov dword [esp + 0x44], edx
mov edx, edi
shr edx, 2
and edx, 1
mov dword [esp + 0x74], eax
test bl, 8
mov dword [esp + 0x70], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x68], ebx
mov dword [esp + 0x20], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], edx
mov dword [esp + 0x24], eax
mov dword [esp + 0x10], esi
mov dword [esp + 0x78], eax
je 0x5c6ab1
mov dword [ebp], 0x80090000
jmp 0x5c6abd
test bl, 4
je 0x5c6aca
mov dword [ebp], 0x80180005
add ebp, 4
mov dword [ebp], 0x801a0000
add ebp, 4
test edi, 0x2000000
je 0x5c6b75
mov ecx, dword [esp + 0x94]
cmp ecx, esi
jae 0x5c6b38
mov edi, dword [esp + 0xa0]
mov esi, dword [esp + 0x5c]
mov ebx, dword [esp + 0x10]
cmp ebp, dword [esp + 0x6c]
jae 0x5c8d26
xor edx, edx
mov eax, ecx
mov dl, byte [ecx]
inc ecx
test esi, esi
mov dword [esp + 0x18], edx
mov dword [esp + 0x94], ecx
je 0x5c6b23
push edi
push ebp
lea ecx, [esp + 0x50]
push esi
push ecx
push eax
call fcn.005c9450
add esp, 0x14
mov ebp, eax
mov edx, dword [esp + 0x18]
mov dword [ebp], edx
mov ecx, dword [esp + 0x94]
add ebp, 4
cmp ecx, ebx
jb 0x5c6af0
mov eax, dword [esp + 0xa0]
mov edx, dword [esp + 0x5c]
push eax
push ebp
lea eax, [esp + 0x50]
push edx
push eax
push ecx
call fcn.005c9450
mov cl, byte [esp + 0x7c]
add esp, 0x14
test cl, 8
je 0x5c8fa2
mov dword [eax], 0x80190000
add eax, 4
mov dword [eax], 0x80160000
jmp 0x5c8fb6
mov esi, dword [ecx + 0x28]
mov dword [esp + 0x34], eax
mov eax, esi
xor edx, edx
mov ebx, 0xc
mov ecx, dword [ecx + 0x14]
div ebx
sub ecx, edx
add ecx, esi
test edi, 0x1000000
mov dword [esp + 0x7c], ecx
je 0x5c6ba7
or edi, 0x80
mov dword [esp + 0x98], edi
mov ecx, dword [esp + 0x94]
mov ebx, dword [esp + 0xa0]
jmp 0x5c6bc5
mov ebx, dword [esp + 0xa0]
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x10]
cmp ecx, eax
jae 0x5c8f8f
cmp ebp, dword [esp + 0x6c]
jae 0x5c8d26
mov esi, dword [ebx]
mov edx, dword [esp + 0x20]
and edx, 0xffff
cmp edx, dword [esi + 0x20]
ja 0x5c8d30
xor edx, edx
mov edi, ecx
mov dl, byte [ecx]
inc ecx
cmp dword [esp + 0x40], 0
mov dword [esp + 0x18], edx
mov dword [esp + 0x94], ecx
je 0x5c6c99
cmp edx, 0x5c
jne 0x5c6c2d
cmp ecx, eax
jae 0x5c6c2d
cmp byte [ecx], 0x45
jne 0x5c6c2d
inc ecx
mov dword [esp + 0x40], 0
mov dword [esp + 0x94], ecx
jmp 0x5c6bc5
mov eax, dword [esp + 0x4c]
test eax, eax
jg case.0x5c6fcc.36
mov eax, dword [esp + 0x58]
test eax, eax
je 0x5c6c54
mov dword [ebp], edx
add ebp, 4
mov dword [esp + 0x3c], 0
jmp 0x5c6bbe
mov eax, dword [esp + 0x50]
mov ecx, eax
dec eax
test ecx, ecx
mov dword [esp + 0x50], eax
jg 0x5c6c7e
mov edx, dword [esp + 0x5c]
push ebx
push ebp
lea eax, [esp + 0x50]
push edx
push eax
push edi
call fcn.005c9450
mov edx, dword [esp + 0x2c]
add esp, 0x14
mov ebp, eax
mov dword [ebp], edx
add ebp, 4
mov dword [esp + 0x24], 1
mov dword [esp + 0x3c], 0
jmp 0x5c6bbe
mov eax, dword [esp + 0x58]
test eax, eax
je 0x5c6dae
mov eax, dword [esp + 0x98]
and eax, 0x400080
cmp eax, 0x400080
jne 0x5c6cda
cmp edx, 0x100
jae 0x5c6dae
cmp edx, 0x23
je 0x5c6dae
mov eax, dword [ebx + 0x10]
test byte [eax + edx], 1
jne 0x5c6dae
cmp edx, 0x29
je 0x5c6d6b
cmp edx, 0x5c
je 0x5c6cf3
mov dword [ebp], edx
add ebp, 4
jmp 0x5c6bbe
mov eax, dword [esp + 0x98]
test eax, 0x400000
je 0x5c6d43
mov ecx, dword [esi + 0x24]
push ebx
push 0
mov edx, eax
push ecx
lea eax, [esp + 0x20]
push edx
mov edx, dword [esp + 0x20]
lea ecx, [esp + 0x28]
push eax
push ecx
lea eax, [esp + 0xac]
push edx
push eax
call fcn.005c51c0
mov edx, dword [esp + 0x34]
add esp, 0x20
test edx, edx
jne 0x5c8e24
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x18]
jmp 0x5c6d45
xor eax, eax
sub eax, 0
je 0x5c7514
sub eax, 0x19
je 0x5c6bc5
dec eax
jne 0x5c8d3a
mov dword [esp + 0x40], 1
jmp 0x5c6bc5
mov esi, dword [esp + 0x78]
mov eax, ecx
sub eax, esi
xor edx, edx
dec eax
mov dword [esp + 0x58], edx
cmp eax, 0xff
jg 0x5c8d44
mov eax, dword [esp + 0x74]
mov ecx, ebp
sub ecx, eax
sar ecx, 2
dec ecx
mov dword [eax], ecx
mov eax, dword [esp + 0x60]
cmp eax, edx
je 0x5c6ba7
mov dword [ebp], eax
add ebp, 4
mov dword [esp + 0x60], edx
jmp 0x5c6bbe
cmp edx, 0x5c
jne 0x5c6ddb
cmp ecx, dword [esp + 0x10]
jae 0x5c6ddb
mov al, byte [ecx]
cmp al, 0x51
je 0x5c6dc3
cmp al, 0x45
jne 0x5c6ddb
xor edx, edx
cmp al, 0x51
sete dl
inc ecx
mov dword [esp + 0x40], edx
mov dword [esp + 0x94], ecx
jmp 0x5c6bc5
test byte [esp + 0x98], 0x80
je 0x5c6e99
cmp edx, 0x100
jae 0x5c6dfe
mov eax, dword [ebx + 0x10]
test byte [eax + edx], 1
jne 0x5c6bc5
cmp edx, 0x23
jne 0x5c6e99
cmp ecx, dword [esp + 0x10]
jae 0x5c6bc5
mov edx, dword [ebx + 0x90]
test edx, edx
je 0x5c6e46
mov eax, dword [ebx + 0x20]
cmp ecx, eax
jae 0x5c6e71
mov esi, dword [esp + 0x44]
push esi
lea esi, [ebx + 0x94]
push esi
push eax
push edx
push ecx
call fcn.005d48a0
mov ecx, dword [esp + 0xa8]
add esp, 0x14
test eax, eax
jne 0x5c6e87
jmp 0x5c6e71
mov eax, dword [ebx + 0x94]
mov edx, dword [ebx + 0x20]
sub edx, eax
cmp ecx, edx
ja 0x5c6e71
mov dl, byte [ecx]
cmp dl, byte [ebx + 0xa0]
jne 0x5c6e71
cmp eax, 1
je 0x5c6e87
mov al, byte [ecx + 1]
mov dl, byte [ebx + 0xa1]
cmp al, dl
je 0x5c6e87
mov eax, dword [esp + 0x10]
inc ecx
cmp ecx, eax
mov dword [esp + 0x94], ecx
jae 0x5c6bc5
jmp 0x5c6e11
add ecx, dword [ebx + 0x94]
mov dword [esp + 0x94], ecx
jmp 0x5c6bc5
cmp edx, 0x28
jne 0x5c6efa
mov eax, dword [esp + 0x10]
mov esi, eax
sub esi, ecx
cmp esi, 2
jl 0x5c6f3c
cmp byte [ecx], 0x3f
jne 0x5c6f3c
cmp byte [ecx + 1], 0x23
jne 0x5c6f3c
inc ecx
cmp ecx, eax
mov dword [esp + 0x94], ecx
jae 0x5c8d4f
cmp byte [ecx], 0x29
je 0x5c6ee5
inc ecx
cmp ecx, eax
mov dword [esp + 0x94], ecx
jae 0x5c8d4f
jmp 0x5c6ece
cmp ecx, eax
jae 0x5c8d4f
inc ecx
mov dword [esp + 0x94], ecx
jmp 0x5c6bc5
cmp edx, 0x2a
je 0x5c6f6d
cmp edx, 0x2b
je 0x5c6f6d
cmp edx, 0x3f
je 0x5c6f6d
cmp edx, 0x7b
jne 0x5c6f3c
mov edx, dword [esp + 0x10]
mov dword [esp + 0x38], ecx
lea ecx, [esp + 0x14]
lea eax, [esp + 0x38]
push ecx
push 0
push 0
push edx
push eax
call fcn.005c5b60
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0x2c]
add esp, 0x14
test eax, eax
jne 0x5c6f6d
mov eax, dword [esp + 0x50]
mov esi, eax
dec eax
test esi, esi
mov dword [esp + 0x50], eax
jg 0x5c6f6d
mov ecx, dword [esp + 0x5c]
push ebx
push ebp
lea edx, [esp + 0x50]
push ecx
push edx
push edi
call fcn.005c9450
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0x2c]
add esp, 0x14
mov ebp, eax
mov eax, dword [esp + 0x4c]
test eax, eax
jle case.0x5c6fcc.33
cmp edx, 0x28
jne case.0x5c6fcc.36
mov eax, dword [esp + 0x10]
sub eax, ecx
cmp eax, 3
jl case.0x5c6fcc.36
mov al, byte [ecx]
cmp al, 0x3f
je 0x5c6f9b
cmp al, 0x2a
jne case.0x5c6fcc.36
cmp al, 0x2a
jne 0x5c6fb3
mov esi, dword [ebx + 0x10]
xor eax, eax
mov al, byte [ecx + 1]
test byte [eax + esi], 4
je case.0x5c6fcc.36
jmp case.0x5c6fcc.33
xor eax, eax
mov al, byte [ecx + 1]
lea esi, [eax - 0x21]
cmp esi, 0x22
ja case.0x5c6fcc.36
xor eax, eax
mov al, byte [esi + 0x5c9030]
jmp dword [eax*4 + 0x5c9020]
mov esi, dword [esp + 0x4c]
xor eax, eax
cmp esi, 2
sete al
test eax, eax
je case.0x5c6fcc.36
mov eax, dword [esp + 0x4c]
mov edi, dword [esp + 0x24]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x3c]
test eax, eax
mov dword [esp + 0x4c], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x3c], 0
je 0x5c705b
cmp edx, 0x3f
je 0x5c701d
cmp edx, 0x2b
jne 0x5c705b
sub edx, 0x3f
neg edx
sbb edx, edx
and edx, 0xffff0000
add edx, 0x20000
add edx, eax
sub eax, 0x803d0000
neg eax
sbb eax, eax
and eax, 2
add eax, 0xfffffffd
mov dword [ebp + eax*4], edx
jmp 0x5c6bbe
mov al, byte [ecx + 2]
cmp al, 0x3d
je case.0x5c6fcc.33
cmp al, 0x21
jne case.0x5c6fcc.36
jmp case.0x5c6fcc.33
lea esi, [edx - 0x24]
cmp esi, 0x58
ja case.0x5c706f.48
xor eax, eax
mov al, byte [esi + 0x5c9088]
jmp dword [eax*4 + 0x5c9054]
mov eax, dword [esp + 0x98]
mov dword [esp + 0x38], ecx
mov ecx, dword [ebx]
push ebx
push 0
mov edx, dword [ecx + 0x24]
lea ecx, [esp + 0x1c]
push edx
push eax
mov eax, dword [esp + 0x20]
lea edx, [esp + 0x28]
push ecx
push edx
lea ecx, [esp + 0xac]
push eax
push ecx
call fcn.005c51c0
mov edx, dword [esp + 0x34]
add esp, 0x20
test edx, edx
mov esi, eax
jne 0x5c7319
mov ecx, dword [esp + 0x94]
test esi, esi
jne 0x5c70e8
mov edx, dword [esp + 0x18]
mov dword [ebp], edx
mov ecx, dword [esp + 0x94]
mov ebx, dword [esp + 0xa0]
add ebp, 4
mov dword [esp + 0x24], 1
jmp 0x5c6bc5
jge 0x5c7142
mov ebx, dword [esp + 0xa0]
add ebp, 4
neg esi
mov edx, dword [ebx + 0x1c]
mov eax, esi
sub ecx, edx
or eax, 0x80030000
dec ecx
cmp esi, 0xa
mov dword [esp + 0x2c], ecx
mov dword [ebp - 4], eax
jge 0x5c712b
cmp dword [ebx + esi*4 + 0x2c], 0xffffffff
jne 0x5c7135
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x24], 1
mov dword [ebx + esi*4 + 0x2c], ecx
jmp 0x5c6bbe
mov edx, dword [esp + 0x2c]
mov dword [ebp], edx
add ebp, 4
mov dword [esp + 0x24], 1
jmp 0x5c6bbe
lea edx, [esi - 6]
cmp edx, 0x16
ja case.0x5c7152.12
xor eax, eax
mov al, byte [edx + 0x5c9100]
jmp dword [eax*4 + 0x5c90e4]
test dword [esp + 0x98], 0x100000
je case.0x5c7152.7
mov edx, 0xb7
mov dword [esp + 0x14], edx
jmp 0x5c73b8
mov ebx, dword [esp + 0xa0]
add esi, 0x80180000
mov dword [ebp], esi
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x24], 1
add ebp, 4
jmp 0x5c6bc5
mov edx, 0x91
mov dword [esp + 0x14], edx
jmp 0x5c73b8
mov eax, dword [esp + 0x98]
mov dword [esp + 0x24], 1
test eax, 0x20000
jne 0x5c71de
mov ebx, dword [esp + 0xa0]
add esi, 0x80180000
mov dword [ebp], esi
mov ecx, dword [esp + 0x94]
add ebp, 4
jmp 0x5c6bc5
cmp esi, 7
je 0x5c71f2
cmp esi, 9
je 0x5c71f2
cmp esi, 0xb
mov eax, 0xf
jne 0x5c71f7
mov eax, 0x10
add eax, 0x80180000
mov dword [ebp], eax
add ebp, 4
cmp edx, 5
ja case.default.0x5c720b
jmp dword [edx*4 + 0x5c9118]
mov ebx, dword [esp + 0xa0]
mov dword [ebp], 0x3000d
mov ecx, dword [esp + 0x94]
add ebp, 4
jmp 0x5c6bc5
mov ebx, dword [esp + 0xa0]
mov dword [ebp], 0x60000
mov ecx, dword [esp + 0x94]
add ebp, 4
jmp 0x5c6bc5
mov ebx, dword [esp + 0xa0]
mov dword [ebp], 0x80000
mov ecx, dword [esp + 0x94]
add ebp, 4
jmp 0x5c6bc5
mov edx, 0x91
mov dword [esp + 0x14], edx
jmp 0x5c73b8
cmp ecx, dword [esp + 0x10]
jae 0x5c7395
mov al, byte [ecx]
cmp al, 0x7b
je 0x5c7293
cmp al, 0x3c
je 0x5c7297
cmp al, 0x27
jne 0x5c7395
cmp al, 0x3c
jne 0x5c729e
mov ebx, 0x3e
jmp 0x5c72ac
sub al, 0x27
neg al
sbb eax, eax
and eax, 0x56
add eax, 0x27
mov ebx, eax
cmp esi, 0x1b
jne 0x5c732d
cmp ebx, 0x7d
je 0x5c732d
mov eax, dword [esp + 0xa0]
inc ecx
mov edi, dword [esp + 0x10]
mov dword [esp + 0x64], ecx
lea ecx, [esp + 0x14]
lea edx, [esp + 0x1c]
push ecx
mov ecx, dword [eax + 0x74]
push edx
push 0xa1
push 0xffff
push ecx
lea edx, [esp + 0x78]
push edi
push edx
call fcn.005c5a40
add esp, 0x1c
test eax, eax
je 0x5c7325
mov eax, dword [esp + 0x64]
cmp eax, edi
jae 0x5c7310
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, ebx
jne 0x5c7310
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x1c]
jmp 0x5c8974
mov edx, 0x9d
mov dword [esp + 0x14], edx
mov ecx, dword [esp + 0x94]
jmp 0x5c73b8
mov edx, dword [esp + 0x14]
test edx, edx
jne 0x5c7319
mov edx, dword [esp + 0xa0]
lea eax, [esp + 0x14]
push edx
lea ecx, [esp + 0x2c]
push eax
lea edx, [esp + 0x38]
push ecx
mov ecx, dword [esp + 0x50]
lea eax, [esp + 0x38]
push edx
mov edx, dword [esp + 0x20]
push eax
push ebx
push ecx
lea eax, [esp + 0xb0]
push edx
push eax
call fcn.005c9340
add esp, 0x24
test eax, eax
je 0x5c73ad
cmp esi, 0x1c
je 0x5c7377
cmp ebx, 0x7d
mov eax, 0x80210000
jne 0x5c737c
mov eax, 0x80040000
mov dword [ebp], eax
mov ecx, dword [esp + 0x28]
add ebp, 4
mov dword [ebp], ecx
mov edx, dword [esp + 0x2c]
add ebp, 4
jmp 0x5c70c7
sub esi, 0x1b
neg esi
sbb esi, esi
and esi, 0xc
add esi, 0x9d
mov edx, esi
mov dword [esp + 0x14], edx
jmp 0x5c73b8
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x14]
test byte [esp + 0x68], 2
je 0x5c9001
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x10]
cmp ecx, eax
mov dword [esp + 0x94], ecx
jb 0x5c73e5
mov dword [esp + 0x18], 0x5c
xor esi, esi
jmp 0x5c70bf
xor eax, eax
mov al, byte [ecx]
inc ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x94], ecx
xor esi, esi
jmp 0x5c70bf
mov dword [ebp], 0x80090000
add ebp, 4
jmp 0x5c6bbe
mov dword [ebp], 0x80160000
add ebp, 4
jmp 0x5c6bbe
mov dword [ebp], 0x80170000
add ebp, 4
mov dword [esp + 0x24], 1
jmp 0x5c6bbe
mov dword [esp + 0x3c], 0x80340000
jmp 0x5c74af
mov dword [esp + 0x3c], 0x80370000
jmp 0x5c74af
mov dword [esp + 0x3c], 0x803a0000
jmp 0x5c74af
lea ecx, [esp + 0x14]
lea edx, [esp + 0x88]
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x88]
push edx
push eax
lea edx, [esp + 0xa0]
push ecx
push edx
call fcn.005c5b60
add esp, 0x14
test eax, eax
jne 0x5c74a0
mov edx, dword [esp + 0x14]
test edx, edx
jne 0x5c8e24
mov eax, dword [esp + 0x18]
mov dword [esp + 0x24], 1
mov dword [ebp], eax
add ebp, 4
jmp 0x5c6bbe
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x3c], 0x803d0000
test edi, edi
je 0x5c8d64
mov ecx, dword [ebp - 4]
lea eax, [ebp - 4]
cmp ecx, 0x802a0000
jne 0x5c74e9
mov ecx, dword [esp + 0x70]
cmp eax, ecx
jb 0x5c74d9
mov edx, dword [eax]
mov dword [eax + 4], edx
sub eax, 4
cmp eax, ecx
jae 0x5c74cd
mov dword [ecx], 0x801a0000
mov dword [ebp + 4], 0x80190000
add ebp, 8
mov eax, dword [esp + 0x3c]
mov dword [ebp], eax
mov eax, dword [esp + 0x18]
add ebp, 4
cmp eax, 0x7b
jne 0x5c6bbe
mov ecx, dword [esp + 0x84]
mov dword [ebp], ecx
mov edx, dword [esp + 0x88]
add ebp, 4
mov dword [ebp], edx
add ebp, 4
jmp 0x5c6bbe
mov edi, dword [esp + 0x10]
mov dword [esp + 0x24], 1
mov eax, edi
sub eax, ecx
cmp eax, 6
jl 0x5c7602
push 6
push str._:_:__
push ecx
call fcn.005d4850
add esp, 0xc
test eax, eax
je 0x5c756b
mov ecx, dword [esp + 0x94]
push 6
push 0x7809ac
push ecx
call fcn.005d4850
add esp, 0xc
test eax, eax
jne 0x5c75f7
mov dword [ebp], 0x80180005
mov edx, dword [esp + 0x94]
add ebp, 4
cmp byte [edx + 2], 0x3c
jne 0x5c758b
mov dword [ebp], 0x80230000
jmp 0x5c75a9
mov eax, dword [esp + 0x9c]
mov dword [ebp], 0x80250000
add ebp, 4
mov dword [eax], 1
mov dword [ebp], 0
mov eax, dword [esp + 0x98]
add ebp, 4
test eax, 0x20000
jne 0x5c75c3
mov dword [ebp], 0x8018000b
jmp 0x5c75d4
mov dword [ebp], 0x80180010
add ebp, 4
mov dword [ebp], 0x80000
add ebp, 4
mov dword [ebp], 0x80190000
mov ecx, dword [esp + 0x94]
add ebp, 4
add ecx, 6
mov dword [esp + 0x94], ecx
jmp 0x5c6bc5
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x18]
cmp ecx, edi
jae 0x5c7636
mov al, byte [ecx]
cmp al, 0x3a
je 0x5c7614
cmp al, 0x2e
je 0x5c7614
cmp al, 0x3d
jne 0x5c7636
lea edx, [esp + 0x38]
push edx
push edi
push ecx
call fcn.005c9280
mov ecx, dword [esp + 0xa0]
add esp, 0xc
test eax, eax
jne 0x5c8d6f
mov edx, dword [esp + 0x18]
xor esi, esi
cmp ecx, edi
jae 0x5c76d7
xor edx, edx
mov dl, byte [ecx]
inc ecx
cmp edx, 0x5c
mov dword [esp + 0x18], edx
mov dword [esp + 0x94], ecx
jne 0x5c76a0
cmp ecx, edi
jae 0x5c7668
cmp byte [ecx], 0x45
jne 0x5c7668
inc ecx
mov dword [esp + 0x94], ecx
jmp 0x5c76c9
mov eax, edi
sub eax, ecx
cmp eax, 3
jl 0x5c76fd
push 3
push 0x7809a8
push ecx
call fcn.005d4850
add esp, 0xc
test eax, eax
jne 0x5c76d3
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x18]
add ecx, 3
mov dword [esp + 0x94], ecx
jmp 0x5c76c9
test dword [esp + 0x98], 0x1000000
je 0x5c76b7
cmp edx, 0x20
je 0x5c76c5
cmp edx, 9
je 0x5c76c5
test esi, esi
jne 0x5c76d7
cmp edx, 0x5e
jne 0x5c76d7
mov esi, 1
mov edi, dword [esp + 0x10]
cmp ecx, edi
jb 0x5c7640
jmp 0x5c76d7
mov edx, dword [esp + 0x18]
cmp edx, 0x5d
jne 0x5c76fd
test byte [ebx + 0x6c], 1
je 0x5c76fd
neg esi
sbb esi, esi
and esi, 0x10000
add esi, 0x800b0000
mov dword [ebp], esi
add ebp, 4
jmp 0x5c6bbe
neg esi
sbb esi, esi
add ebp, 4
and esi, 0x40000
add esi, 0x800a0000
xor edi, edi
mov dword [ebp - 4], esi
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x40]
mov esi, 1
test eax, eax
je 0x5c775e
cmp edx, 0x5c
jne 0x5c7956
cmp ecx, dword [esp + 0x10]
jae 0x5c7956
cmp byte [ecx], 0x45
jne 0x5c7956
inc ecx
mov dword [esp + 0x40], 0
mov dword [esp + 0x94], ecx
jmp case.0x5c7944.3
test dword [esp + 0x98], 0x1000000
je 0x5c777d
cmp edx, 0x20
je case.0x5c7944.3
cmp edx, 9
je case.0x5c7944.3
cmp edx, 0x5b
jne 0x5c786a
mov eax, dword [esp + 0x10]
sub eax, ecx
cmp eax, 3
jl 0x5c7956
mov al, byte [ecx]
cmp al, 0x3a
je 0x5c77a7
cmp al, 0x2e
je 0x5c77a7
cmp al, 0x3d
jne 0x5c7956
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x38]
push edx
push eax
push ecx
call fcn.005c9280
add esp, 0xc
test eax, eax
je 0x5c785f
xor esi, esi
cmp edi, 1
je 0x5c8d8b
mov ecx, dword [esp + 0x94]
cmp byte [ecx], 0x3a
jne 0x5c8d9c
inc ecx
mov dword [esp + 0x94], ecx
cmp byte [ecx], 0x5e
jne 0x5c77f7
inc ecx
mov esi, 1
mov dword [esp + 0x94], ecx
mov edx, dword [esp + 0x38]
sub edx, ecx
push edx
push ecx
call fcn.005c92e0
add esp, 8
test eax, eax
jl 0x5c8da7
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x10]
add ecx, 2
dec edx
cmp ecx, edx
mov dword [esp + 0x94], ecx
jae 0x5c7835
cmp byte [ecx], 0x2d
jne 0x5c7835
cmp byte [ecx + 1], 0x5d
jne 0x5c8dcd
xor edi, edi
neg esi
sbb esi, esi
add ebp, 4
and esi, 0x10000
add esi, 0x801c0000
mov dword [ebp - 4], esi
mov dword [ebp], eax
mov ecx, dword [esp + 0x94]
add ebp, 4
jmp case.0x5c7944.3
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x18]
cmp edx, 0x2d
jne 0x5c78a2
cmp edi, 2
jb 0x5c7956
sub edi, 3
neg edi
sbb edi, edi
and edi, 0xffff0000
add edi, 0x801f0000
mov dword [ebp], edi
mov ecx, dword [esp + 0x94]
add ebp, 4
mov edi, 1
jmp case.0x5c7944.3
cmp edx, 0x5c
jne 0x5c7956
mov eax, dword [ebx]
mov edx, dword [esp + 0x98]
mov dword [esp + 0x38], ecx
push ebx
mov ecx, dword [eax + 0x24]
push 1
push ecx
lea eax, [esp + 0x20]
push edx
mov edx, dword [esp + 0x20]
lea ecx, [esp + 0x28]
push eax
push ecx
lea eax, [esp + 0xac]
push edx
push eax
call fcn.005c51c0
mov edx, dword [esp + 0x34]
add esp, 0x20
test edx, edx
mov esi, eax
je 0x5c7928
test byte [esp + 0x68], 2
je 0x5c8e24
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x10]
cmp ecx, eax
mov dword [esp + 0x94], ecx
jb 0x5c7914
mov edx, 0x5c
xor esi, esi
mov dword [esp + 0x18], edx
jmp 0x5c793c
xor edx, edx
mov dl, byte [ecx]
inc ecx
mov dword [esp + 0x18], edx
mov dword [esp + 0x94], ecx
xor esi, esi
jmp 0x5c793c
mov ecx, dword [esp + 0x94]
cmp esi, 0x1a
ja case.0x5c7944.5
mov edx, dword [esp + 0x18]
xor eax, eax
mov al, byte [esi + 0x5c9148]
jmp dword [eax*4 + 0x5c9130]
mov edx, 8
mov dword [esp + 0x18], edx
xor esi, esi
cmp edi, 1
jne 0x5c79a6
mov eax, dword [ebp - 8]
cmp eax, edx
jne 0x5c796c
sub ebp, 4
xor edi, edi
jmp case.0x5c7944.3
ja 0x5c8db8
test esi, esi
jne 0x5c798a
cmp dword [ebp - 4], 0x801f0000
jne 0x5c798a
mov dword [ebp - 4], 0x801e0000
mov edx, dword [esp + 0x18]
mov dword [ebp], edx
mov ecx, dword [esp + 0x94]
add ebp, 4
mov dword [esp + 0x24], 1
xor edi, edi
jmp case.0x5c7944.3
xor ecx, ecx
mov dword [ebp], edx
test esi, esi
setne cl
add ecx, 2
add ebp, 4
mov edi, ecx
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x24], 1
jmp case.0x5c7944.3
mov dword [esp + 0x40], 1
jmp case.0x5c7944.3
cmp edi, 1
je 0x5c8dcd
lea eax, [esi - 6]
xor edi, edi
cmp eax, 0xf
ja case.0x5c79f8.10
xor edx, edx
mov dl, byte [eax + 0x5c9178]
jmp dword [edx*4 + 0x5c9164]
test dword [esp + 0x98], 0x20000
jne 0x5c7a17
add esi, 0x80180000
mov dword [ebp], esi
jmp 0x5c7a61
cmp esi, 7
je 0x5c7a2b
cmp esi, 9
je 0x5c7a2b
cmp esi, 0xb
mov ecx, 0xf
jne 0x5c7a30
mov ecx, 0x10
add ecx, 0x80180000
mov dword [ebp], ecx
add ebp, 4
cmp eax, 5
ja case.default.0x5c7a41
jmp dword [eax*4 + 0x5c9188]
mov dword [ebp], 0x3000d
jmp 0x5c7a61
mov dword [ebp], 0x60000
jmp 0x5c7a61
mov dword [ebp], 0x80000
add ebp, 4
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x94]
dec eax
cmp ecx, eax
jae case.0x5c7944.3
cmp byte [ecx], 0x2d
jne case.0x5c7944.3
cmp byte [ecx + 1], 0x5d
jne 0x5c8dcd
cmp ecx, dword [esp + 0x10]
jae 0x5c8dd7
xor edx, edx
mov dl, byte [ecx]
inc ecx
cmp edx, 0x5d
mov dword [esp + 0x18], edx
mov dword [esp + 0x94], ecx
jne 0x5c7720
mov eax, dword [esp + 0x40]
test eax, eax
jne 0x5c7720
cmp edi, 1
jne 0x5c7abe
mov dword [ebp - 4], 0x2d
mov dword [ebp], 0x800d0000
add ebp, 4
jmp 0x5c6bbe
mov edx, dword [esp + 0x10]
cmp ecx, edx
jae 0x5c8fef
mov al, byte [ecx]
cmp al, 0x3f
je 0x5c7ea0
cmp al, 0x2a
je 0x5c7b2d
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x98]
inc edx
test ah, 0x20
mov dword [esp + 0x20], edx
jne 0x5c7b1e
mov eax, dword [ebx + 0x74]
cmp eax, 0xffff
jae 0x5c8df6
inc eax
mov dword [ebx + 0x74], eax
or eax, 0x80080000
mov dword [ebp], eax
add ebp, 4
jmp 0x5c6bbe
mov dword [ebp], 0x801a0000
add ebp, 4
jmp 0x5c6bbe
sub edx, ecx
cmp edx, 1
jle 0x5c6bc5
xor eax, eax
mov al, byte [ecx + 1]
cmp eax, 0x29
mov dword [esp + 0x18], eax
je 0x5c6bc5
mov ecx, dword [ebx + 0x10]
test byte [ecx + eax], 4
je 0x5c7d10
lea edx, [esp + 0x14]
push ebx
lea eax, [esp + 0x2c]
push edx
lea ecx, [esp + 0x38]
push eax
mov eax, dword [esp + 0x50]
lea edx, [esp + 0x38]
push ecx
mov ecx, dword [esp + 0x20]
push edx
push 0
push eax
lea edx, [esp + 0xb0]
push ecx
push edx
mov esi, 0x729abc
call fcn.005c9340
add esp, 0x24
test eax, eax
je 0x5c8ff6
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x10]
cmp ecx, eax
jae 0x5c8e07
cmp byte [ecx], 0x3a
jne 0x5c8e07
mov edx, dword [0x729c18]
xor eax, eax
test edx, edx
mov dword [esp + 0x1c], eax
jle 0x5c8e07
mov edx, dword [esp + 0x28]
cmp edx, dword [eax*8 + 0x729b90]
jne 0x5c7bf4
mov eax, dword [esp + 0x30]
push edx
push esi
push eax
call fcn.005d4850
add esp, 0xc
test eax, eax
je 0x5c7c14
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x28]
mov edi, dword [eax*8 + 0x729b90]
inc eax
mov dword [esp + 0x1c], eax
lea esi, [esi + edi + 1]
mov edi, dword [0x729c18]
cmp eax, edi
jge 0x5c8e07
jmp 0x5c7bc9
mov eax, dword [esp + 0x1c]
mov ecx, dword [0x729c18]
cmp eax, ecx
jge 0x5c8e00
mov ecx, dword [esp + 0x54]
mov eax, dword [eax*8 + 0x729b94]
test ecx, ecx
jle 0x5c7c4b
cmp eax, 0x80230000
jb 0x5c8e11
cmp eax, 0x80260000
ja 0x5c8e11
cmp eax, 0x80250000
ja 0x5c7cc0
je 0x5c7cf6
cmp eax, 0x80230000
ja 0x5c7c9e
je case.0x5c7ecd.41
cmp eax, 0x80020000
jne 0x5c8e41
mov ecx, dword [esp + 0x20]
mov dword [ebp], 0x80020000
add ebp, 4
mov ebx, dword [esp + 0xa0]
inc ecx
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x94]
inc ecx
mov dword [esp + 0x94], ecx
jmp 0x5c6bc5
cmp eax, 0x80240000
jne 0x5c8e60
mov dword [ebp], 0x80240000
mov ecx, dword [esp + 0x94]
add ebp, 4
inc ecx
jmp 0x5c8639
cmp eax, 0x80280000
ja 0x5c8e59
je 0x5c7cf6
cmp eax, 0x80260000
je 0x5c7cf6
cmp eax, 0x80270000
jne 0x5c8e60
mov dword [ebp], 0x80270000
mov ecx, dword [esp + 0x94]
add ebp, 4
inc ecx
jmp 0x5c8639
mov dword [ebp], eax
mov eax, dword [esp + 0x94]
add ebp, 4
dec eax
mov dword [esp + 0x94], eax
jmp 0x5c8609
lea ecx, [esp + 0x14]
push ebx
lea edx, [esp + 0x2c]
push ecx
lea eax, [esp + 0x38]
push edx
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0x38]
push eax
mov eax, dword [esp + 0x20]
push ecx
push 0
push edx
lea ecx, [esp + 0xb0]
push eax
push ecx
mov esi, 0x7299f0
call fcn.005c9340
add esp, 0x24
test eax, eax
je 0x5c8ff6
mov ecx, dword [esp + 0x94]
mov edi, dword [esp + 0x10]
cmp ecx, edi
jae 0x5c8f9b
mov al, byte [ecx]
cmp al, 0x3a
je 0x5c7d6f
cmp al, 0x29
jne 0x5c8f9b
mov edx, dword [0x729a8c]
xor eax, eax
test edx, edx
mov dword [esp + 0x1c], eax
jle 0x5c8f9b
mov edx, dword [esp + 0x28]
lea ebx, [eax + eax*2]
cmp edx, dword [ebx*4 + 0x729a20]
jne 0x5c7db5
push edx
mov edx, dword [esp + 0x34]
push esi
push edx
call fcn.005d4850
add esp, 0xc
test eax, eax
je 0x5c7dd8
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x28]
lea ebx, [eax + eax*2]
inc eax
mov dword [esp + 0x1c], eax
mov ebx, dword [ebx*4 + 0x729a20]
lea esi, [esi + ebx + 1]
mov ebx, dword [0x729a8c]
cmp eax, ebx
jge 0x5c8f9b
jmp 0x5c7d87
mov eax, dword [esp + 0x1c]
mov ecx, dword [0x729a8c]
cmp eax, ecx
mov ecx, dword [esp + 0x94]
jge 0x5c8f9b
cmp byte [ecx], 0x3a
jne 0x5c7e0b
lea edx, [ecx + 1]
cmp edx, edi
jae 0x5c7e0b
cmp byte [edx], 0x29
jne 0x5c7e0b
mov ecx, edx
mov dword [esp + 0x94], ecx
lea eax, [eax + eax*2]
shl eax, 2
mov esi, dword [eax + 0x729a28]
test esi, esi
jle 0x5c7e24
cmp byte [ecx], 0x3a
jne 0x5c8e82
mov eax, dword [eax + 0x729a24]
xor edx, edx
cmp eax, 0x802a0000
mov dword [esp + 0x70], ebp
sete dl
mov dword [esp + 0x24], edx
mov dl, byte [ecx]
inc ecx
cmp dl, 0x3a
mov dword [esp + 0x94], ecx
jne 0x5c8c26
test esi, esi
jge 0x5c7e60
mov dword [esp + 0x60], eax
mov dword [ebp], 0x80290000
jmp 0x5c7e77
mov ecx, eax
sub ecx, 0x80290000
neg ecx
sbb ecx, ecx
and ecx, 0x10000
add ecx, eax
mov dword [ebp], ecx
mov ecx, dword [esp + 0x94]
mov ebx, dword [esp + 0xa0]
add ebp, 4
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], ebp
add ebp, 4
mov dword [esp + 0x58], 1
jmp 0x5c6bc5
inc ecx
cmp ecx, edx
mov dword [esp + 0x94], ecx
jae 0x5c8fef
mov dl, byte [ecx]
mov eax, edx
and eax, 0xff
add eax, 0xffffffdf
cmp eax, 0x31
ja case.0x5c7ecd.46
xor ebx, ebx
mov bl, byte [eax + 0x5c91d8]
jmp dword [ebx*4 + 0x5c91a0]
mov eax, dword [esp + 0x10]
inc ecx
cmp ecx, eax
mov dword [esp + 0x94], ecx
jae 0x5c8fef
mov al, byte [ecx]
cmp al, 0x3c
jne 0x5c7ef8
mov eax, 0x3e
jmp 0x5c86bd
cmp al, 0x3e
je case.0x5c7ecd.34
cmp al, 0x3d
jne 0x5c8e8c
mov ecx, dword [esp + 0xa0]
lea edx, [esp + 0x14]
push ecx
lea eax, [esp + 0x2c]
push edx
lea ecx, [esp + 0x38]
push eax
mov eax, dword [esp + 0x50]
lea edx, [esp + 0x38]
push ecx
mov ecx, dword [esp + 0x20]
push edx
push 0x29
push eax
lea edx, [esp + 0xb0]
push ecx
push edx
call fcn.005c9340
add esp, 0x24
test eax, eax
je 0x5c8ff6
mov dword [ebp], 0x80040000
mov eax, dword [esp + 0x28]
add ebp, 4
mov dword [ebp], eax
mov ecx, dword [esp + 0x2c]
add ebp, 4
mov dword [ebp], ecx
jmp 0x5c70ca
mov edx, dword [esp + 0x10]
xor eax, eax
inc ecx
mov dword [esp + 0x1c], eax
cmp ecx, edx
mov dword [esp + 0x94], ecx
jae 0x5c8e96
cmp byte [ecx], 0x29
jne 0x5c8e96
jmp 0x5c8974
mov ebx, dword [esp + 0x10]
mov eax, ebx
sub eax, ecx
cmp eax, 2
jl 0x5c8ea0
mov al, byte [ecx + 1]
cmp al, 0x30
jb 0x5c8ea0
cmp al, 0x39
ja 0x5c8ea0
jmp 0x5c8909
mov ecx, dword [esp + 0xa0]
lea edx, [esp + 0x14]
push ecx
lea eax, [esp + 0x2c]
push edx
lea ecx, [esp + 0x38]
push eax
mov eax, dword [esp + 0x50]
lea edx, [esp + 0x38]
push ecx
mov ecx, dword [esp + 0x20]
push edx
push 0x29
push eax
lea edx, [esp + 0xb0]
push ecx
push edx
call fcn.005c9340
add esp, 0x24
test eax, eax
je 0x5c8ff6
mov dword [ebp], 0x80210000
mov eax, dword [esp + 0x28]
add ebp, 4
mov dword [ebp], eax
mov ecx, dword [esp + 0x2c]
add ebp, 4
mov dword [ebp], ecx
jmp 0x5c70ca
mov eax, dword [esp + 0x10]
inc ecx
cmp ecx, eax
mov dword [esp + 0x94], ecx
jae 0x5c8fef
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x48]
dec edx
test eax, eax
mov dword [esp + 0x4c], edx
je 0x5c805a
test byte [esp + 0x98], 4
je 0x5c805a
lea edx, [ebp - 0x10]
cmp eax, edx
jne 0x5c805a
cmp dword [ebp - 4], 0xff
jne 0x5c805a
mov ebp, eax
mov dword [esp + 0x48], ebp
mov al, byte [ecx]
cmp al, 0x29
mov dword [esp + 0x50], 1
je 0x5c812c
cmp al, 0x30
jb 0x5c807c
cmp al, 0x39
jbe 0x5c812c
mov eax, dword [0x72a564]
xor esi, esi
test eax, eax
mov edi, ecx
mov dword [esp + 0x1c], esi
je 0x5c8eaa
xor edx, edx
mov dl, byte [ecx]
cmp edx, eax
je 0x5c80af
mov eax, dword [esi*4 + 0x72a568]
inc esi
test eax, eax
mov dword [esp + 0x1c], esi
je 0x5c8eaa
jmp 0x5c8091
mov esi, dword [esi*4 + 0x72a588]
test esi, esi
je 0x5c8eaa
mov edx, dword [esp + 0x10]
mov dword [ebp], 0x80070000
mov ecx, dword [esp + 0x94]
add ebp, 0xc
inc ecx
cmp ecx, edx
mov dword [esp + 0x94], ecx
jae 0x5c8eb4
xor eax, eax
mov al, byte [ecx]
cmp eax, esi
jne 0x5c80d3
inc ecx
cmp ecx, edx
mov dword [esp + 0x94], ecx
jae 0x5c80ff
xor eax, eax
mov al, byte [ecx]
cmp eax, esi
je 0x5c80d3
mov eax, ecx
sub eax, edi
cmp eax, 0xffffffff
ja 0x5c8ec0
mov ecx, dword [esp + 0xa0]
mov dword [ebp], eax
add ebp, 4
mov esi, dword [ecx + 0x1c]
sub edi, esi
add ebp, 4
mov eax, edi
mov dword [esp + 0x2c], eax
mov dword [ebp - 4], eax
jmp 0x5c817f
mov esi, dword [esp + 0x10]
mov dword [ebp], 0x80060000
mov ecx, dword [esp + 0x94]
xor edx, edx
add ebp, 0xc
cmp ecx, esi
jae 0x5c8175
mov al, byte [ecx]
cmp al, 0x30
jb 0x5c8175
cmp al, 0x39
ja 0x5c8175
lea edx, [edx + edx*4]
and eax, 0xff
inc ecx
lea edx, [eax + edx*2 - 0x30]
mov dword [esp + 0x94], ecx
cmp edx, 0xff
jg 0x5c8eca
cmp ecx, esi
jb 0x5c8147
mov dword [ebp], edx
mov edx, dword [esp + 0x10]
add ebp, 4
mov ecx, dword [esp + 0x94]
cmp ecx, edx
jae 0x5c8ed4
cmp byte [ecx], 0x29
jne 0x5c8ed4
mov eax, dword [esp + 0xa0]
inc ecx
mov dword [esp + 0x94], ecx
mov ebx, dword [esp + 0xa0]
mov edx, dword [eax + 0x1c]
sub ecx, edx
mov edx, dword [esp + 0x48]
mov dword [edx + 4], ecx
mov eax, dword [esp + 0x48]
mov dword [eax + 8], 0
mov ecx, dword [esp + 0x94]
jmp 0x5c6bc5
mov eax, dword [esp + 0x10]
inc ecx
cmp ecx, eax
mov dword [esp + 0x94], ecx
jae 0x5c8fef
mov edx, dword [esp + 0x20]
mov cl, byte [ecx]
inc edx
cmp cl, 0x3f
mov dword [esp + 0x20], edx
je 0x5c8570
cmp cl, 0x2a
je 0x5c8570
mov edi, dword [esp + 0xa0]
mov esi, dword [esp + 0x10]
lea ecx, [esp + 0x14]
lea edx, [esp + 0x1c]
mov eax, dword [edi + 0x74]
push ecx
push edx
push 0xa1
push 0xffff
push eax
lea ecx, [esp + 0xa8]
push esi
push ecx
call fcn.005c5a40
add esp, 0x1c
test eax, eax
je 0x5c8274
mov eax, dword [esp + 0x1c]
test eax, eax
jle 0x5c8ede
mov dword [ebp], 0x80120000
mov eax, dword [esp + 0x94]
mov esi, dword [edi + 0x1c]
add ebp, 4
sub eax, esi
sub eax, 2
add ebp, 4
mov dword [esp + 0x2c], eax
mov dword [ebp - 4], eax
mov edx, dword [esp + 0x1c]
mov dword [ebp], edx
jmp 0x5c853d
mov edx, dword [esp + 0x14]
test edx, edx
jne 0x5c8e24
mov eax, dword [esp + 0x94]
mov ecx, esi
sub ecx, eax
cmp ecx, 0xa
jl 0x5c83de
push 7
push str.VERSION
push eax
call fcn.005d4850
add esp, 0xc
test eax, eax
mov eax, dword [esp + 0x94]
jne 0x5c83de
mov dl, byte [eax + 7]
lea ecx, [eax + 7]
cmp dl, 0x29
je 0x5c83de
xor esi, esi
mov dword [esp + 0x94], ecx
mov dword [esp + 0x64], esi
mov al, byte [ecx]
xor ebx, ebx
cmp al, 0x3e
jne 0x5c82e4
inc ecx
mov ebx, 1
mov dword [esp + 0x94], ecx
cmp byte [ecx], 0x3d
jne 0x5c8eef
inc ecx
mov dword [esp + 0x94], ecx
mov al, byte [ecx]
cmp al, 0x30
jb 0x5c8eef
cmp al, 0x39
ja 0x5c8eef
mov edi, dword [esp + 0x10]
lea edx, [esp + 0x14]
lea eax, [esp + 0x64]
push edx
push eax
push 0xb3
push 0x3e8
push 0xffffffffffffffff
lea ecx, [esp + 0xa8]
push edi
push ecx
call fcn.005c5a40
add esp, 0x1c
test eax, eax
je 0x5c8ff6
mov ecx, dword [esp + 0x94]
cmp ecx, edi
jae 0x5c8eef
cmp byte [ecx], 0x2e
jne 0x5c83b9
inc ecx
cmp ecx, edi
mov dword [esp + 0x94], ecx
jae 0x5c8eef
mov al, byte [ecx]
cmp al, 0x30
jb 0x5c8eef
cmp al, 0x39
ja 0x5c8eef
and eax, 0xff
sub eax, 0x30
lea esi, [eax + eax*4]
shl esi, 1
inc ecx
cmp ecx, edi
mov dword [esp + 0x94], ecx
jae 0x5c8eef
mov al, byte [ecx]
cmp al, 0x30
jb 0x5c83a8
cmp al, 0x39
ja 0x5c83a8
and eax, 0xff
inc ecx
mov dword [esp + 0x94], ecx
lea esi, [esi + eax - 0x30]
cmp ecx, edi
jae 0x5c8eef
cmp byte [ecx], 0x29
jne 0x5c8eef
mov edx, dword [esp + 0x64]
mov dword [ebp], 0x80150000
add ebp, 4
mov dword [ebp], ebx
add ebp, 4
mov dword [ebp], edx
add ebp, 4
mov dword [ebp], esi
add ebp, 4
jmp 0x5c8544
mov dl, byte [eax]
xor ebx, ebx
cmp dl, 0x52
jne 0x5c840a
sub esi, eax
cmp esi, 1
jle 0x5c840a
cmp byte [eax + 1], 0x26
lea ecx, [eax + 1]
jne 0x5c840a
mov esi, 0x29
mov ebx, 1
mov dword [esp + 0x94], ecx
jmp 0x5c842f
cmp dl, 0x3c
jne 0x5c8416
mov esi, 0x3e
jmp 0x5c842f
cmp dl, 0x27
jne 0x5c8422
mov esi, 0x27
jmp 0x5c842f
dec eax
mov esi, 0x29
mov dword [esp + 0x94], eax
lea eax, [esp + 0x14]
push edi
lea ecx, [esp + 0x2c]
push eax
lea edx, [esp + 0x38]
push ecx
mov ecx, dword [esp + 0x50]
lea eax, [esp + 0x38]
push edx
mov edx, dword [esp + 0x20]
push eax
push esi
push ecx
lea eax, [esp + 0xb0]
push edx
push eax
call fcn.005c9340
add esp, 0x24
test eax, eax
je 0x5c8ff6
test ebx, ebx
je 0x5c8486
mov dword [ebp], 0x80130000
mov eax, dword [esp + 0x94]
dec eax
mov dword [esp + 0x94], eax
jmp 0x5c851e
cmp esi, 0x29
jne 0x5c8517
mov esi, dword [esp + 0x28]
cmp esi, 6
jne 0x5c84cb
mov ecx, dword [esp + 0x30]
push esi
push str.DEFINE
push ecx
call fcn.005d4850
add esp, 0xc
test eax, eax
jne 0x5c84c7
mov dword [ebp], 0x80100000
mov eax, dword [esp + 0x94]
dec eax
mov dword [esp + 0x94], eax
jmp 0x5c851e
mov esi, dword [esp + 0x28]
mov edx, dword [esp + 0x30]
mov ecx, 1
cmp esi, ecx
mov dword [esp + 0x1c], ecx
jle 0x5c84f0
mov al, byte [edx + ecx]
cmp al, 0x30
jb 0x5c84f0
cmp al, 0x39
ja 0x5c84f0
inc ecx
cmp ecx, esi
mov dword [esp + 0x1c], ecx
jl 0x5c84dc
cmp byte [edx], 0x52
jne 0x5c84fe
cmp ecx, esi
mov eax, 0x80140000
jge 0x5c8503
mov eax, 0x80110000
mov dword [ebp], eax
mov eax, dword [esp + 0x94]
dec eax
mov dword [esp + 0x94], eax
jmp 0x5c851e
mov dword [ebp], 0x80110000
mov edx, dword [ebp]
add ebp, 4
cmp edx, 0x80100000
je 0x5c8536
mov eax, dword [esp + 0x28]
mov dword [ebp], eax
add ebp, 4
mov ecx, dword [esp + 0x2c]
mov dword [ebp], ecx
mov edi, dword [esp + 0x10]
add ebp, 4
mov ecx, dword [esp + 0x94]
cmp ecx, edi
jae 0x5c8ef9
cmp byte [ecx], 0x29
jne 0x5c8ef9
mov ebx, dword [esp + 0xa0]
inc ecx
mov dword [esp + 0x94], ecx
jmp 0x5c6bc5
mov ebx, dword [esp + 0xa0]
mov dword [ebp], 0x800f0000
mov ecx, dword [esp + 0x94]
add ebp, 4
dec ecx
mov dword [esp + 0x4c], 2
mov dword [esp + 0x94], ecx
jmp 0x5c6bc5
mov dword [ebp], 0x80230000
mov ecx, dword [esp + 0x94]
add ebp, 4
inc ecx
jmp 0x5c8639
mov edx, dword [esp + 0x10]
mov ebx, 1
sub edx, ecx
cmp edx, ebx
jle 0x5c86b1
mov cl, byte [ecx + 1]
cmp cl, 0x3d
je 0x5c85e2
cmp cl, 0x21
je 0x5c85dd
cmp cl, 0x2a
jne 0x5c86b1
cmp cl, 0x3d
jne 0x5c85e9
mov ecx, 0x80250000
jmp 0x5c85fc
sub cl, 0x21
neg cl
sbb ecx, ecx
and ecx, 0x20000
add ecx, 0x80260000
mov dword [ebp], ecx
mov eax, dword [esp + 0x94]
add ebp, 4
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0xa0]
add ebp, 4
mov dword [ecx], 1
mov esi, dword [edx + 0x1c]
sub eax, esi
sub eax, 2
mov dword [esp + 0x2c], eax
mov dword [ebp - 4], eax
mov ecx, dword [esp + 0x94]
add ecx, 2
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x54]
inc edx
mov dword [esp + 0x94], ecx
test eax, eax
mov dword [esp + 0x20], edx
jle 0x5c6bae
mov eax, dword [esp + 0x34]
test eax, eax
jne 0x5c866d
mov eax, dword [esp + 0xa0]
mov eax, dword [eax + 0x14]
mov dword [esp + 0x34], eax
jmp 0x5c8680
mov edx, dword [esp + 0x7c]
add eax, 0xc
cmp eax, edx
mov dword [esp + 0x34], eax
jae 0x5c8f03
mov edx, dword [esp + 0x98]
mov cx, word [esp + 0x20]
mov ebx, dword [esp + 0xa0]
and edx, 0x10424e8
mov word [eax], cx
mov word [eax + 6], 2
mov dword [eax + 8], edx
mov ecx, dword [esp + 0x94]
jmp 0x5c6bc5
mov eax, 0x3e
jmp 0x5c86c2
mov eax, 0x27
mov ebx, 1
mov edi, dword [esp + 0xa0]
lea ecx, [esp + 0x14]
push edi
lea edx, [esp + 0x2c]
push ecx
push edx
lea ecx, [esp + 0x3c]
lea edx, [esp + 0x38]
push ecx
mov ecx, dword [esp + 0x20]
push edx
push eax
mov eax, dword [esp + 0x5c]
lea edx, [esp + 0xac]
push eax
push ecx
push edx
call fcn.005c9340
add esp, 0x24
test eax, eax
je 0x5c8ff6
mov eax, dword [edi + 0x74]
cmp eax, 0xffff
jae 0x5c8f0d
mov edx, dword [esp + 0x20]
inc eax
mov dword [edi + 0x74], eax
or eax, 0x80080000
mov dword [ebp], eax
mov ax, word [edi + 0x58]
add ebp, 4
inc edx
cmp ax, 0x2710
mov dword [esp + 0x20], edx
jae 0x5c8f1e
mov ecx, dword [esp + 0x28]
xor esi, esi
mov si, word [edi + 0x5a]
lea edx, [ecx + 3]
cmp edx, esi
jbe 0x5c874d
lea edx, [ecx + 3]
mov word [edi + 0x5a], dx
mov esi, dword [edi + 0x64]
mov dword [esp + 0x64], 0
test ax, ax
mov dword [esp + 0x1c], 0
jbe 0x5c87d8
xor eax, eax
mov ax, word [esi + 8]
cmp ecx, eax
jne 0x5c87b4
mov edx, dword [esp + 0x30]
push ecx
mov ecx, dword [esi]
push ecx
push edx
call fcn.005d4850
add esp, 0xc
test eax, eax
jne 0x5c87b0
mov eax, dword [esi + 4]
mov ecx, dword [edi + 0x74]
cmp eax, ecx
je 0x5c87d8
test byte [esp + 0x98], 0x40
je 0x5c8f2f
mov word [esi + 0xa], bx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x64], ebx
mov dword [edi + 0xb8], ebx
jmp 0x5c87c2
mov ecx, dword [esp + 0x28]
mov edx, dword [esi + 4]
mov eax, dword [edi + 0x74]
cmp edx, eax
je 0x5c8f40
mov eax, dword [esp + 0x1c]
xor edx, edx
mov dx, word [edi + 0x58]
inc eax
add esi, 0xc
cmp eax, edx
mov dword [esp + 0x1c], eax
jl 0x5c8765
mov ecx, dword [esp + 0x1c]
xor eax, eax
mov ax, word [edi + 0x58]
cmp ecx, eax
jl 0x5c6ba7
mov ecx, dword [edi + 0x68]
cmp eax, ecx
jb 0x5c886d
lea eax, [ecx + ecx]
mov ecx, dword [edi]
mov dword [esp + 0x80], eax
mov edx, dword [ecx + 8]
lea eax, [eax + eax*2]
shl eax, 2
push edx
push eax
call dword [ecx]
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x5c8f51
mov eax, dword [esp + 0xa0]
mov edi, ebx
mov ecx, dword [eax + 0x68]
mov esi, dword [eax + 0x64]
lea ecx, [ecx + ecx*2]
shl ecx, 2
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp dword [eax + 0x68], 0x14
jbe 0x5c8859
mov ecx, eax
mov eax, dword [ecx]
mov ecx, dword [ecx + 0x64]
mov edx, dword [eax + 8]
push edx
push ecx
call dword [eax + 4]
mov eax, dword [esp + 0xa8]
add esp, 8
mov edx, dword [esp + 0x80]
mov edi, dword [esp + 0xa0]
mov dword [eax + 0x64], ebx
mov dword [eax + 0x68], edx
mov ecx, dword [edi + 0x64]
mov edx, dword [esp + 0x30]
xor eax, eax
mov ebx, dword [esp + 0xa0]
mov ax, word [edi + 0x58]
lea eax, [eax + eax*2]
mov dword [ecx + eax*4], edx
mov ecx, dword [edi + 0x64]
mov dx, word [esp + 0x28]
xor eax, eax
mov ax, word [edi + 0x58]
lea eax, [eax + eax*2]
mov word [ecx + eax*4 + 8], dx
mov ecx, dword [edi + 0x64]
mov edx, dword [edi + 0x74]
xor eax, eax
mov ax, word [edi + 0x58]
lea eax, [eax + eax*2]
mov dword [ecx + eax*4 + 4], edx
mov ecx, dword [edi + 0x64]
mov dx, word [esp + 0x64]
xor eax, eax
mov ax, word [edi + 0x58]
lea eax, [eax + eax*2]
mov word [ecx + eax*4 + 0xa], dx
inc word [edi + 0x58]
mov ecx, dword [esp + 0x94]
jmp 0x5c6bc5
mov ebx, dword [esp + 0x10]
cmp dl, 0x2d
jne 0x5c89a8
mov eax, ebx
sub eax, ecx
cmp eax, 1
jle 0x5c89a8
mov al, byte [ecx + 1]
cmp al, 0x30
jb 0x5c89a8
cmp al, 0x39
ja 0x5c89a8
jmp 0x5c8909
mov ebx, dword [esp + 0x10]
cmp dl, 0x30
jb 0x5c8918
cmp dl, 0x39
ja 0x5c8918
or eax, 0xffffffff
jmp 0x5c8922
mov ecx, dword [esp + 0xa0]
mov eax, dword [ecx + 0x74]
lea edx, [esp + 0x14]
lea ecx, [esp + 0x1c]
push edx
push ecx
push 0xa1
push 0xffff
push eax
lea edx, [esp + 0xa8]
push ebx
push edx
call fcn.005c5a40
add esp, 0x1c
test eax, eax
je 0x5c8ff6
mov eax, dword [esp + 0x1c]
test eax, eax
jl 0x5c8f62
mov ecx, dword [esp + 0x94]
cmp ecx, ebx
jae 0x5c8fef
cmp byte [ecx], 0x29
jne 0x5c8fef
mov edx, dword [esp + 0xa0]
or eax, 0x80200000
mov dword [ebp], eax
mov ecx, dword [esp + 0x94]
mov esi, dword [edx + 0x1c]
mov eax, ecx
add ebp, 4
sub eax, esi
inc ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x94], ecx
mov dword [ebp], eax
jmp 0x5c70ca
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x34]
xor edx, edx
inc edi
cmp eax, edx
mov dword [esp + 0x20], edi
jne 0x5c89cb
mov edi, dword [esp + 0xa0]
mov eax, dword [edi + 0x14]
mov dword [esp + 0x34], eax
jmp 0x5c89e5
mov esi, dword [esp + 0x7c]
add eax, 0xc
cmp eax, esi
mov dword [esp + 0x34], eax
jae 0x5c8f03
mov edi, dword [esp + 0xa0]
mov cx, word [esp + 0x20]
mov word [eax + 6], dx
mov word [eax], cx
mov ecx, dword [esp + 0x98]
mov esi, ecx
and esi, 0x10424e8
mov dword [eax + 8], esi
mov esi, dword [esp + 0x94]
cmp byte [esi], 0x7c
jne 0x5c8a54
mov dx, word [edi + 0x74]
mov ebx, dword [esp + 0xa0]
mov word [eax + 2], dx
mov cx, word [edi + 0x74]
or byte [eax + 6], 1
mov word [eax + 4], cx
mov edx, dword [edi + 0x70]
add ebp, 4
or edx, 0x200000
mov dword [edi + 0x70], edx
mov dword [ebp - 4], 0x801a0000
mov ecx, dword [esp + 0x94]
inc ecx
mov dword [esp + 0x94], ecx
jmp 0x5c6bc5
mov dword [esp + 0x8c], ecx
mov word [eax + 2], dx
mov word [eax + 4], dx
mov ecx, dword [esp + 0x94]
cmp ecx, ebx
mov dword [esp + 0x64], 1
mov dword [esp + 0x54], edx
mov dword [esp + 0x80], edx
lea eax, [esp + 0x80]
jae 0x5c8b78
cmp byte [ecx], 0x5e
jne 0x5c8ab5
mov esi, dword [esp + 0x98]
mov dword [esp + 0x64], 0
and esi, 0xfeffdb57
inc ecx
mov dword [esp + 0x98], esi
mov dword [esp + 0x94], ecx
cmp ecx, ebx
jae 0x5c8b78
mov dl, byte [ecx]
cmp dl, 0x29
je 0x5c8b74
cmp dl, 0x3a
je 0x5c8b74
and edx, 0xff
inc ecx
mov esi, edx
mov dword [esp + 0x94], ecx
sub esi, 0x2d
cmp esi, 0x4b
ja case.0x5c8af5.53
xor edx, edx
mov dl, byte [esi + 0x5c9230]
jmp dword [edx*4 + 0x5c920c]
mov eax, dword [esp + 0x64]
test eax, eax
je 0x5c8f74
lea eax, [esp + 0x54]
mov dword [esp + 0x64], 0
jmp 0x5c8b6c
mov esi, dword [eax]
mov edx, dword [edi + 0x70]
or esi, 0x40
or dh, 4
mov dword [eax], esi
mov dword [edi + 0x70], edx
jmp 0x5c8b6c
or dword [eax], 8
jmp 0x5c8b6c
mov edx, dword [eax]
or dh, 4
mov dword [eax], edx
jmp 0x5c8b6c
mov edx, dword [eax]
or dh, 0x20
mov dword [eax], edx
jmp 0x5c8b6c
or dword [eax], 0x20
jmp 0x5c8b6c
or dword [eax], 0x40000
jmp 0x5c8b6c
mov edx, dword [eax]
or dl, 0x80
cmp ecx, ebx
mov dword [eax], edx
jae 0x5c8b74
cmp byte [ecx], 0x78
jne 0x5c8b6c
or edx, 0x1000000
inc ecx
mov dword [eax], edx
mov dword [esp + 0x94], ecx
cmp ecx, ebx
jb 0x5c8abd
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x80]
mov esi, eax
and esi, 0x1000080
cmp esi, 0x80
je 0x5c8b94
test dl, 0x80
je 0x5c8b9a
or edx, 0x1000000
or eax, dword [esp + 0x98]
not edx
and eax, edx
cmp ecx, ebx
mov dword [esp + 0x98], eax
jae 0x5c8fef
mov dl, byte [ecx]
inc ecx
cmp dl, 0x29
mov dword [esp + 0x94], ecx
jne 0x5c8bf7
mov edi, dword [esp + 0xa0]
mov esi, dword [esp + 0x20]
mov edx, dword [esp + 0x34]
add esi, 0xffff
mov ebx, dword [edi + 0x14]
mov dword [esp + 0x20], esi
cmp edx, ebx
jbe 0x5c8bf2
cmp word [edx - 0xc], si
jne 0x5c8bf2
add edx, 0xfffffff4
mov dword [esp + 0x34], edx
jmp 0x5c8c08
mov word [edx], si
jmp 0x5c8c01
mov dword [ebp], 0x801a0000
add ebp, 4
mov ecx, dword [esp + 0x94]
cmp eax, dword [esp + 0x8c]
je 0x5c6bae
mov eax, dword [esp + 0x98]
mov dword [ebp], 0x801b0000
add ebp, 4
mov ebx, dword [esp + 0xa0]
mov dword [ebp], eax
mov ecx, dword [esp + 0x94]
add ebp, 4
jmp 0x5c6bc5
mov eax, dword [esp + 0x34]
test eax, eax
je 0x5c8c71
mov cx, word [esp + 0x20]
cmp word [eax], cx
jne 0x5c8c71
test byte [eax + 6], 1
je 0x5c8c71
mov ecx, dword [ebx + 0x74]
xor edx, edx
mov dx, word [eax + 4]
cmp ecx, edx
jbe 0x5c8c68
mov word [eax + 4], cx
xor edx, edx
mov dx, word [eax + 2]
mov dword [ebx + 0x74], edx
mov dword [ebp], 0x80010000
add ebp, 4
jmp 0x5c6bbe
mov edx, dword [esp + 0x34]
xor esi, esi
cmp edx, esi
mov dword [esp + 0x24], 1
je 0x5c8cfe
mov ax, word [edx]
cmp ax, word [esp + 0x20]
jne 0x5c8cfe
mov eax, dword [esp + 0x98]
mov edi, dword [edx + 8]
and eax, 0xfefbdb17
or eax, edi
mov dword [esp + 0x98], eax
mov al, byte [edx + 6]
test al, 1
je 0x5c8ccb
mov edi, dword [ebx + 0x74]
xor eax, eax
mov ax, word [edx + 4]
cmp eax, edi
jbe 0x5c8ccb
mov dword [ebx + 0x74], eax
mov ax, word [edx + 6]
test al, 2
je 0x5c8cd7
mov dword [esp + 0x24], esi
test al, 4
je 0x5c8cec
mov dword [ebp], 0x80190000
mov ecx, dword [esp + 0x94]
add ebp, 4
cmp edx, dword [ebx + 0x14]
jne 0x5c8cf7
mov dword [esp + 0x34], esi
jmp 0x5c8cfe
sub edx, 0xc
mov dword [esp + 0x34], edx
cmp word [esp + 0x20], si
je 0x5c8f87
mov ecx, dword [esp + 0x20]
mov dword [ebp], 0x80190000
add ecx, 0xffff
add ebp, 4
mov dword [esp + 0x20], ecx
jmp 0x5c6bbe
mov edx, 0xa3
jmp 0x5c9001
mov edx, 0x77
jmp 0x5c9001
mov edx, 0x8c
jmp 0x5c9001
dec ecx
mov edx, 0xb0
jmp 0x5c9001
mov edx, 0x76
jmp 0x5c9001
dec ecx
mov edx, 0x80
jmp 0x5c9001
mov edx, 0x6d
dec ecx
jmp 0x5c9001
mov dl, byte [ecx]
dec ecx
cmp dl, 0x3a
jne 0x5c8d81
mov edx, 0x70
jmp 0x5c9001
mov edx, 0x71
jmp 0x5c9001
mov ecx, dword [esp + 0x94]
mov edx, 0x96
jmp 0x5c9001
mov edx, 0x71
dec ecx
jmp 0x5c9001
mov ecx, dword [esp + 0x94]
mov edx, 0x82
jmp 0x5c9001
mov edx, 0x6c
dec ecx
jmp 0x5c9001
mov edx, 0xab
jmp 0x5c9001
mov edx, 0x96
jmp 0x5c9001
mov edx, 0x6a
jmp 0x5c9001
mov edx, 0x91
jmp 0x5c9001
mov edx, 0x6b
dec ecx
jmp 0x5c9001
mov edx, 0xc5
jmp 0x5c9001
mov ecx, dword [esp + 0x94]
mov edx, 0xc3
jmp 0x5c9001
cmp eax, 0x80270000
je 0x5c8e30
cmp eax, 0x80280000
je 0x5c8e30
mov edx, 0x80
mov ecx, dword [esp + 0x94]
jmp 0x5c9001
mov ecx, dword [esp + 0x94]
mov edx, 0xc6
jmp 0x5c9001
cmp eax, 0x80220000
je 0x5c8e71
mov ecx, dword [esp + 0x94]
mov edx, 0xbd
jmp 0x5c9001
cmp eax, 0x8fff0000
je 0x5c8e71
mov ecx, dword [esp + 0x94]
mov edx, 0xbd
jmp 0x5c9001
mov ecx, dword [esp + 0x94]
mov edx, 0xc4
jmp 0x5c9001
mov edx, 0xa6
jmp 0x5c9001
mov edx, 0x8d
jmp 0x5c9001
mov edx, 0x9e
jmp 0x5c9001
mov edx, 0x81
jmp 0x5c9001
mov edx, 0xb6
jmp 0x5c9001
mov edx, 0xb5
mov ecx, edi
jmp 0x5c9001
mov edx, 0xac
jmp 0x5c9001
mov edx, 0x8a
jmp 0x5c9001
mov edx, 0x8b
jmp 0x5c9001
mov ecx, dword [esp + 0x94]
mov edx, 0x73
jmp 0x5c9001
mov edx, 0xb3
jmp 0x5c9001
mov edx, 0x7c
jmp 0x5c9001
mov edx, 0xb8
jmp 0x5c9001
mov ecx, dword [esp + 0x94]
mov edx, 0xc5
jmp 0x5c9001
mov ecx, dword [esp + 0x94]
mov edx, 0x95
jmp 0x5c9001
mov ecx, dword [esp + 0x94]
mov edx, 0x8f
jmp 0x5c9001
mov ecx, dword [esp + 0x94]
mov edx, 0xa5
jmp 0x5c9001
mov ecx, dword [esp + 0x94]
mov edx, 0x79
jmp 0x5c9001
mov ecx, dword [esp + 0x94]
mov edx, 0x73
dec ecx
jmp 0x5c9001
mov edx, 0xc2
dec ecx
jmp 0x5c9001
mov edx, 0x6f
dec ecx
jmp 0x5c9001
mov edx, 0x7a
dec ecx
jmp 0x5c9001
mov eax, dword [esp + 0x58]
test eax, eax
je 0x5c6b38
mov edx, 0xa0
jmp 0x5c9001
test cl, 4
je 0x5c8fb9
mov dword [eax], 0x80190000
add eax, 4
mov dword [eax], 0x80180005
add eax, 4
cmp eax, dword [esp + 0x6c]
jb 0x5c8fcd
mov ecx, dword [esp + 0x94]
mov edx, 0xa3
jmp 0x5c9001
cmp word [esp + 0x20], 0
mov dword [eax], SysReAllocString
jne 0x5c8fe8
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x80
ret
mov ecx, dword [esp + 0x94]
mov edx, 0x72
jmp 0x5c9001
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0xa0]
pop edi
mov esi, dword [eax + 0x1c]
sub ecx, esi
pop esi
mov dword [eax + 0x54], ecx
pop ebp
mov eax, edx
pop ebx
add esp, 0x80
ret