Function at 0x10289cf0
Capabilities:
Parse credit card information

Disassembly:
sub esp, 0x10
push ebx
mov ebx, dword [esp + 0x18]
test ebx, ebx
jne 0x10289d03
xor eax, eax
pop ebx
add esp, 0x10
ret
push ebp
push edi
mov ebp, 0x50
push 0x51
mov dword [esp + 0x10], ebp
call dword [sym.php5.dll_xmlMallocAtomic]
mov edi, eax
add esp, 4
test edi, edi
jne 0x10289d35
push str.saving_URI_n
call fcn.1028a9a0
add esp, 4
xor eax, eax
pop edi
pop ebp
pop ebx
add esp, 0x10
ret
mov ebx, dword [ebx]
push esi
xor esi, esi
test ebx, ebx
je 0x10289da2
cmp byte [ebx], 0
je 0x10289d9d
cmp esi, ebp
jl 0x10289d71
cmp ebp, 0x100000
jg 0x10289f44
add ebp, ebp
lea eax, [ebp + 1]
push eax
push edi
call dword [sym.php5.dll_xmlRealloc]
add esp, 8
test eax, eax
je 0x10289f23
mov dword [esp + 0x10], ebp
mov edi, eax
mov al, byte [ebx]
mov byte [esi + edi], al
inc ebx
inc esi
cmp byte [ebx], 0
jne 0x10289d43
cmp esi, ebp
jl 0x10289d9d
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov edi, eax
mov byte [esi + edi], 0x3a
inc esi
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x18], 0x37
mov ecx, dword [ebx + 4]
mov dword [esp + 0x1c], ecx
test ecx, ecx
je 0x10289f81
cmp byte [ecx], 0
je 0x1028a77a
lea edx, [esi + 3]
mov dword [esp + 0x14], edx
lea ecx, [ecx]
cmp edx, ebp
jl 0x10289df8
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov edi, eax
mov al, byte [ecx]
cmp al, 0x3b
je 0x10289f65
cmp al, 0x2f
je 0x10289f65
cmp al, 0x3f
je 0x10289f65
cmp al, 0x3a
je 0x10289f65
cmp al, 0x40
je 0x10289f65
cmp al, 0x26
je 0x10289f65
cmp al, 0x3d
je 0x10289f65
cmp al, 0x2b
je 0x10289f65
cmp al, 0x24
je 0x10289f65
cmp al, 0x2c
je 0x10289f65
cmp al, 0x5b
je 0x10289f65
cmp al, 0x5d
je 0x10289f65
cmp al, 0x61
jl 0x10289e66
cmp al, 0x7a
jle 0x10289f65
cmp al, 0x41
jl 0x10289e72
cmp al, 0x5a
jle 0x10289f65
cmp al, 0x30
jl 0x10289e7e
cmp al, 0x39
jle 0x10289f65
cmp al, 0x2d
je 0x10289f65
cmp al, 0x5f
je 0x10289f65
cmp al, 0x2e
je 0x10289f65
cmp al, 0x21
je 0x10289f65
cmp al, 0x7e
je 0x10289f65
cmp al, 0x2a
je 0x10289f65
cmp al, 0x27
je 0x10289f65
cmp al, 0x28
je 0x10289f65
cmp al, 0x29
je 0x10289f65
movzx ebx, al
mov eax, ebx
cdq
and edx, 0xf
add eax, edx
inc ecx
sar eax, 4
mov dword [esp + 0x1c], ecx
and ebx, reloc.WS2_32.dll_ntohs
jns 0x10289ee6
dec ebx
or ebx, 0xfffffff0
inc ebx
mov edx, dword [esp + 0x14]
cmp eax, 9
mov ecx, 0x30
cmovg ecx, dword [esp + 0x18]
add cl, al
mov byte [esi + edi], 0x25
mov byte [esi + edi + 1], cl
cmp ebx, 9
mov ecx, 0x37
mov eax, 0x30
cmovg eax, ecx
mov ecx, dword [esp + 0x1c]
add al, bl
mov byte [esi + edi + 2], al
add esi, 3
add edx, 3
jmp 0x10289f6f
push str.saving_URI_n
call fcn.1028a9a0
add esp, 4
push edi
call dword [sym.php5.dll_xmlFree]
add esp, 4
xor eax, eax
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x10
ret
push str.reaching_arbitrary_MAX_URI_LENGTH_limit_n
call fcn.1028a9a0
add esp, 4
push edi
call dword [sym.php5.dll_xmlFree]
add esp, 4
xor eax, eax
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x10
ret
mov byte [esi + edi], al
inc esi
inc edx
inc ecx
mov dword [esp + 0x1c], ecx
cmp byte [ecx], 0
mov dword [esp + 0x14], edx
jne 0x10289dd0
jmp 0x1028a776
cmp dword [ebx + 0xc], 0
jne 0x1028a1f2
cmp dword [ebx + 0x14], 0xffffffff
je 0x1028a1f2
cmp dword [ebx + 8], 0
je 0x1028a1bd
lea eax, [esi + 3]
cmp eax, ebp
jl 0x10289fc2
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov edi, eax
mov word [esi + edi], 0x2f2f
mov ecx, dword [ebx + 8]
add esi, 2
cmp byte [ecx], 0
mov dword [esp + 0x14], ecx
je 0x1028a110
lea edx, [esi + 3]
mov dword [esp + 0x1c], edx
cmp edx, ebp
jl 0x1028a00a
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov edi, eax
mov al, byte [ecx]
cmp al, 0x61
jl 0x1028a018
cmp al, 0x7a
jle 0x1028a0f5
cmp al, 0x41
jl 0x1028a024
cmp al, 0x5a
jle 0x1028a0f5
cmp al, 0x30
jl 0x1028a030
cmp al, 0x39
jle 0x1028a0f5
cmp al, 0x2d
je 0x1028a0f5
cmp al, 0x5f
je 0x1028a0f5
cmp al, 0x2e
je 0x1028a0f5
cmp al, 0x21
je 0x1028a0f5
cmp al, 0x7e
je 0x1028a0f5
cmp al, 0x2a
je 0x1028a0f5
cmp al, 0x27
je 0x1028a0f5
cmp al, 0x28
je 0x1028a0f5
cmp al, 0x29
je 0x1028a0f5
cmp al, 0x24
je 0x1028a0f5
cmp al, 0x2c
je 0x1028a0f5
cmp al, 0x3b
je 0x1028a0f5
cmp al, 0x3a
je 0x1028a0f5
cmp al, 0x40
je 0x1028a0f5
cmp al, 0x26
je 0x1028a0f5
cmp al, 0x3d
je 0x1028a0f5
cmp al, 0x2b
je 0x1028a0f5
movzx ebx, al
mov eax, ebx
cdq
and edx, 0xf
add eax, edx
inc ecx
sar eax, 4
mov dword [esp + 0x14], ecx
and ebx, reloc.WS2_32.dll_ntohs
jns 0x1028a0b8
dec ebx
or ebx, 0xfffffff0
inc ebx
mov edx, dword [esp + 0x1c]
cmp eax, 9
mov ecx, 0x30
cmovg ecx, dword [esp + 0x18]
add cl, al
mov byte [esi + edi], 0x25
mov byte [esi + edi + 1], cl
cmp ebx, 9
mov ecx, 0x37
mov eax, 0x30
cmovg eax, ecx
mov ecx, dword [esp + 0x14]
add al, bl
mov byte [esi + edi + 2], al
add esi, 3
add edx, 3
jmp 0x1028a0ff
mov byte [esi + edi], al
inc esi
inc edx
inc ecx
mov dword [esp + 0x14], ecx
cmp byte [ecx], 0
mov dword [esp + 0x1c], edx
jne 0x10289fe2
mov ebx, dword [esp + 0x24]
mov ecx, dword [ebx + 0x18]
mov dword [esp + 0x14], ecx
test ecx, ecx
je 0x1028a560
mov edx, dword [ebx]
test edx, edx
je 0x1028a426
cmp byte [ecx], 0x2f
jne 0x1028a426
mov al, byte [ecx + 1]
lea ebx, [ecx + 1]
cmp al, 0x61
jl 0x1028a140
cmp al, 0x7a
jle 0x1028a150
cmp al, 0x41
jl 0x1028a422
cmp al, 0x5a
jg 0x1028a422
cmp byte [ecx + 2], 0x3a
jne 0x1028a422
push str.file
push edx
call sym.php5.dll_xmlStrEqual
add esp, 8
test eax, eax
je 0x1028a41e
lea eax, [esi + 3]
cmp eax, ebp
jl 0x1028a193
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov edi, eax
mov eax, dword [esp + 0x14]
mov ecx, ebx
movzx eax, byte [eax]
mov byte [esi + edi], al
movzx eax, byte [ecx]
mov byte [esi + edi + 1], al
movzx eax, byte [ecx + 1]
mov byte [esi + edi + 2], al
add esi, 3
add ecx, 2
mov dword [esp + 0x14], ecx
jmp 0x1028a422
cmp dword [ebx], 0
je 0x1028a110
lea eax, [esi + 3]
cmp eax, ebp
jl 0x1028a110
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov edi, eax
jmp 0x1028a110
lea eax, [esi + 3]
cmp eax, ebp
jl 0x1028a215
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov edi, eax
mov word [esi + edi], 0x2f2f
mov ecx, dword [ebx + 0x10]
add esi, 2
mov dword [esp + 0x14], ecx
test ecx, ecx
je 0x1028a38a
cmp byte [ecx], 0
je 0x1028a362
lea edx, [esi + 3]
mov dword [esp + 0x1c], edx
lea ecx, [ecx]
cmp edx, ebp
jl 0x1028a268
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov edi, eax
mov al, byte [ecx]
cmp al, 0x61
jl 0x1028a276
cmp al, 0x7a
jle 0x1028a347
cmp al, 0x41
jl 0x1028a282
cmp al, 0x5a
jle 0x1028a347
cmp al, 0x30
jl 0x1028a28e
cmp al, 0x39
jle 0x1028a347
cmp al, 0x2d
je 0x1028a347
cmp al, 0x5f
je 0x1028a347
cmp al, 0x2e
je 0x1028a347
cmp al, 0x21
je 0x1028a347
cmp al, 0x7e
je 0x1028a347
cmp al, 0x2a
je 0x1028a347
cmp al, 0x27
je 0x1028a347
cmp al, 0x28
je 0x1028a347
cmp al, 0x29
je 0x1028a347
cmp al, 0x3b
je 0x1028a347
cmp al, 0x3a
je 0x1028a347
cmp al, 0x26
je 0x1028a347
cmp al, 0x3d
je 0x1028a347
cmp al, 0x2b
je 0x1028a347
cmp al, 0x24
je 0x1028a347
cmp al, 0x2c
je 0x1028a347
movzx ebx, al
mov eax, ebx
cdq
and edx, 0xf
add eax, edx
inc ecx
sar eax, 4
mov dword [esp + 0x14], ecx
and ebx, reloc.WS2_32.dll_ntohs
jns 0x1028a30a
dec ebx
or ebx, 0xfffffff0
inc ebx
mov edx, dword [esp + 0x1c]
cmp eax, 9
mov ecx, 0x30
cmovg ecx, dword [esp + 0x18]
add cl, al
mov byte [esi + edi], 0x25
mov byte [esi + edi + 1], cl
cmp ebx, 9
mov ecx, 0x37
mov eax, 0x30
cmovg eax, ecx
mov ecx, dword [esp + 0x14]
add al, bl
mov byte [esi + edi + 2], al
add esi, 3
add edx, 3
jmp 0x1028a351
mov byte [esi + edi], al
inc esi
inc edx
inc ecx
mov dword [esp + 0x14], ecx
cmp byte [ecx], 0
mov dword [esp + 0x1c], edx
jne 0x1028a240
mov ebx, dword [esp + 0x24]
lea eax, [esi + 3]
cmp eax, ebp
jl 0x1028a385
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov edi, eax
mov byte [esi + edi], 0x40
inc esi
mov ebx, dword [ebx + 0xc]
test ebx, ebx
je 0x1028a10c
cmp byte [ebx], 0
je 0x1028a3cc
lea ebx, [ebx]
cmp esi, ebp
jl 0x1028a3c0
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov edi, eax
mov al, byte [ebx]
mov byte [esi + edi], al
inc ebx
inc esi
cmp byte [ebx], 0
jne 0x1028a3a0
mov ebx, dword [esp + 0x24]
cmp dword [ebx + 0x14], 0
jle 0x1028a110
lea eax, [esi + 0xa]
cmp eax, ebp
jl 0x1028a3fd
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov edi, eax
push dword [ebx + 0x14]
mov eax, ebp
sub eax, esi
push 0x1051ed90
push eax
lea eax, [esi + edi]
push eax
call dword [sym.imp.MSVCR110.dll__snprintf]
add esp, 0x10
add esi, eax
jmp 0x1028a110
mov ecx, dword [esp + 0x14]
mov ebx, dword [esp + 0x24]
cmp byte [ecx], 0
je 0x1028a560
lea edx, [esi + 3]
mov dword [esp + 0x1c], edx
cmp edx, ebp
jl 0x1028a45e
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov edi, eax
mov al, byte [ecx]
cmp al, 0x61
jl 0x1028a46c
cmp al, 0x7a
jle 0x1028a545
cmp al, 0x41
jl 0x1028a478
cmp al, 0x5a
jle 0x1028a545
cmp al, 0x30
jl 0x1028a484
cmp al, 0x39
jle 0x1028a545
cmp al, 0x2d
je 0x1028a545
cmp al, 0x5f
je 0x1028a545
cmp al, 0x2e
je 0x1028a545
cmp al, 0x21
je 0x1028a545
cmp al, 0x7e
je 0x1028a545
cmp al, 0x2a
je 0x1028a545
cmp al, 0x27
je 0x1028a545
cmp al, 0x28
je 0x1028a545
cmp al, 0x29
je 0x1028a545
cmp al, 0x2f
je 0x1028a545
cmp al, 0x3b
je 0x1028a545
cmp al, 0x40
je 0x1028a545
cmp al, 0x26
je 0x1028a545
cmp al, 0x3d
je 0x1028a545
cmp al, 0x2b
je 0x1028a545
cmp al, 0x24
je 0x1028a545
cmp al, 0x2c
je 0x1028a545
movzx ebx, al
mov eax, ebx
cdq
and edx, 0xf
add eax, edx
inc ecx
sar eax, 4
mov dword [esp + 0x14], ecx
and ebx, reloc.WS2_32.dll_ntohs
jns 0x1028a508
dec ebx
or ebx, 0xfffffff0
inc ebx
mov edx, dword [esp + 0x1c]
cmp eax, 9
mov ecx, 0x30
cmovg ecx, dword [esp + 0x18]
add cl, al
mov byte [esi + edi], 0x25
mov byte [esi + edi + 1], cl
cmp ebx, 9
mov ecx, 0x37
mov eax, 0x30
cmovg eax, ecx
mov ecx, dword [esp + 0x14]
add al, bl
mov byte [esi + edi + 2], al
add esi, 3
add edx, 3
jmp 0x1028a54f
mov byte [esi + edi], al
inc esi
inc edx
inc ecx
mov dword [esp + 0x14], ecx
cmp byte [ecx], 0
mov dword [esp + 0x1c], edx
jne 0x1028a436
mov ebx, dword [esp + 0x24]
cmp dword [ebx + 0x28], 0
je 0x1028a5e0
lea ebx, [esi + 1]
cmp ebx, ebp
jl 0x1028a589
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov edi, eax
mov byte [esi + edi], 0x3f
mov esi, ebx
mov ebx, dword [esp + 0x24]
mov ebx, dword [ebx + 0x28]
cmp byte [ebx], 0
je 0x1028a776
lea eax, [esi + 1]
mov dword [esp + 0x1c], eax
cmp eax, ebp
jl 0x1028a5c6
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov edi, eax
mov al, byte [ebx]
mov byte [esi + edi], al
mov eax, dword [esp + 0x1c]
inc ebx
inc eax
inc esi
cmp byte [ebx], 0
mov dword [esp + 0x1c], eax
jne 0x1028a5a6
jmp 0x1028a776
cmp dword [ebx + 0x1c], 0
je 0x1028a77a
lea eax, [esi + 3]
cmp eax, ebp
jl 0x1028a60d
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov edi, eax
mov byte [esi + edi], 0x3f
mov ecx, dword [ebx + 0x1c]
inc esi
cmp byte [ecx], 0
mov dword [esp + 0x14], ecx
je 0x1028a77a
lea edx, [esi + 3]
mov dword [esp + 0x1c], edx
lea esp, [esp]
cmp edx, ebp
jl 0x1028a658
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov edi, eax
mov al, byte [ecx]
cmp al, 0x61
jl 0x1028a666
cmp al, 0x7a
jle 0x1028a75f
cmp al, 0x41
jl 0x1028a672
cmp al, 0x5a
jle 0x1028a75f
cmp al, 0x30
jl 0x1028a67e
cmp al, 0x39
jle 0x1028a75f
cmp al, 0x2d
je 0x1028a75f
cmp al, 0x5f
je 0x1028a75f
cmp al, 0x2e
je 0x1028a75f
cmp al, 0x21
je 0x1028a75f
cmp al, 0x7e
je 0x1028a75f
cmp al, 0x2a
je 0x1028a75f
cmp al, 0x27
je 0x1028a75f
cmp al, 0x28
je 0x1028a75f
cmp al, 0x29
je 0x1028a75f
cmp al, 0x3b
je 0x1028a75f
cmp al, 0x2f
je 0x1028a75f
cmp al, 0x3f
je 0x1028a75f
cmp al, 0x3a
je 0x1028a75f
cmp al, 0x40
je 0x1028a75f
cmp al, 0x26
je 0x1028a75f
cmp al, 0x3d
je 0x1028a75f
cmp al, 0x2b
je 0x1028a75f
cmp al, 0x24
je 0x1028a75f
cmp al, 0x2c
je 0x1028a75f
cmp al, 0x5b
je 0x1028a75f
cmp al, 0x5d
je 0x1028a75f
movzx ebx, al
mov eax, ebx
cdq
and edx, 0xf
add eax, edx
inc ecx
sar eax, 4
mov dword [esp + 0x14], ecx
and ebx, reloc.WS2_32.dll_ntohs
jns 0x1028a722
dec ebx
or ebx, 0xfffffff0
inc ebx
mov edx, dword [esp + 0x1c]
cmp eax, 9
mov ecx, 0x30
cmovg ecx, dword [esp + 0x18]
add cl, al
mov byte [esi + edi], 0x25
mov byte [esi + edi + 1], cl
cmp ebx, 9
mov ecx, 0x37
mov eax, 0x30
cmovg eax, ecx
mov ecx, dword [esp + 0x14]
add al, bl
mov byte [esi + edi + 2], al
add esi, 3
add edx, 3
jmp 0x1028a769
mov byte [esi + edi], al
inc esi
inc edx
inc ecx
mov dword [esp + 0x14], ecx
cmp byte [ecx], 0
mov dword [esp + 0x1c], edx
jne 0x1028a630
mov ebx, dword [esp + 0x24]
cmp dword [ebx + 0x20], 0
je 0x1028a90d
lea eax, [esi + 3]
cmp eax, ebp
jl 0x1028a7a7
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov edi, eax
mov byte [esi + edi], 0x23
mov ecx, dword [ebx + 0x20]
inc esi
cmp byte [ecx], 0
mov dword [esp + 0x1c], ecx
je 0x1028a90d
lea edx, [esi + 3]
mov dword [esp + 0x24], edx
cmp edx, ebp
jl 0x1028a7eb
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
je 0x1028a923
mov ebp, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
mov edi, eax
mov al, byte [ecx]
cmp al, 0x61
jl 0x1028a7f9
cmp al, 0x7a
jle 0x1028a8f6
cmp al, 0x41
jl 0x1028a805
cmp al, 0x5a
jle 0x1028a8f6
cmp al, 0x30
jl 0x1028a811
cmp al, 0x39
jle 0x1028a8f6
cmp al, 0x2d
je 0x1028a8f6
cmp al, 0x5f
je 0x1028a8f6
cmp al, 0x2e
je 0x1028a8f6
cmp al, 0x21
je 0x1028a8f6
cmp al, 0x7e
je 0x1028a8f6
cmp al, 0x2a
je 0x1028a8f6
cmp al, 0x27
je 0x1028a8f6
cmp al, 0x28
je 0x1028a8f6
cmp al, 0x29
je 0x1028a8f6
cmp al, 0x3b
je 0x1028a8f6
cmp al, 0x2f
je 0x1028a8f6
cmp al, 0x3f
je 0x1028a8f6
cmp al, 0x3a
je 0x1028a8f6
cmp al, 0x40
je 0x1028a8f6
cmp al, 0x26
je 0x1028a8f6
cmp al, 0x3d
je 0x1028a8f6
cmp al, 0x2b
je 0x1028a8f6
cmp al, 0x24
je 0x1028a8f6
cmp al, 0x2c
je 0x1028a8f6
cmp al, 0x5b
je 0x1028a8f6
cmp al, 0x5d
je 0x1028a8f6
movzx ebx, al
mov eax, ebx
cdq
and edx, 0xf
add eax, edx
inc ecx
sar eax, 4
mov dword [esp + 0x1c], ecx
and ebx, reloc.WS2_32.dll_ntohs
jns 0x1028a8b9
dec ebx
or ebx, 0xfffffff0
inc ebx
mov edx, dword [esp + 0x24]
cmp eax, 9
mov ecx, 0x30
cmovg ecx, dword [esp + 0x18]
add cl, al
mov byte [esi + edi], 0x25
mov byte [esi + edi + 1], cl
cmp ebx, 9
mov ecx, 0x37
mov eax, 0x30
cmovg eax, ecx
mov ecx, dword [esp + 0x1c]
add al, bl
mov byte [esi + edi + 2], al
add esi, 3
add edx, 3
jmp 0x1028a900
mov byte [esi + edi], al
inc esi
inc edx
inc ecx
mov dword [esp + 0x1c], ecx
cmp byte [ecx], 0
mov dword [esp + 0x24], edx
jne 0x1028a7c3
cmp esi, ebp
jl 0x1028a939
lea eax, [esp + 0x10]
push eax
push edi
call fcn.1028a950
add esp, 8
test eax, eax
jne 0x1028a937
push edi
call dword [sym.php5.dll_xmlFree]
add esp, 4
xor eax, eax
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x10
ret
mov edi, eax
mov byte [esi + edi], 0
pop esi
mov eax, edi
pop edi
pop ebp
pop ebx
add esp, 0x10
ret