Function at 0x10018860
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x74
push ebx
push esi
mov esi, dword [ebp + 0xc]
push edi
mov edi, dword [ebp + 0x10]
mov dword [esp + 0x34], 0
lea ebx, [ebx]
mov dl, byte [esi + 0xc]
mov bl, byte [edi + 0xc]
movzx eax, dl
mov ecx, eax
mov dword [esp + 0x30], eax
movzx eax, bl
shl ecx, 4
or ecx, eax
cmp ecx, 0x66
jne 0x10018a09
mov ecx, dword [esi + 4]
mov ebx, dword [esi]
xorps xmm0, xmm0
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
movsd qword [esp + 0x40], xmm0
movsd qword [esp + 0x48], xmm0
mov dword [esp + 0x18], 0xa
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
test ecx, ecx
je 0x10018952
mov dword [esp + 0x24], 0
jmp 0x100188f0
mov al, byte [ebx]
cmp al, 0x20
je 0x100190c5
cmp al, 0xa
je 0x100190c5
cmp al, 9
je 0x100190c5
cmp al, 0xd
je 0x100190c5
cmp al, 0xb
je 0x100190c5
cmp al, 0xc
je 0x100190c5
mov dword [esp + 0x14], ecx
mov dl, al
mov ecx, ebx
mov dword [esp + 0x1c], ecx
cmp dl, 0x2d
je 0x100195ab
cmp dl, 0x2b
je 0x100195ab
mov al, byte [ecx]
cmp al, 0x39
jle 0x10018a43
cmp al, 0x2e
je 0x100191fc
xor al, al
movzx ebx, al
test al, al
jne 0x10018d3b
mov ecx, dword [edi]
mov edx, dword [esi]
mov ebx, dword [edi + 4]
mov edi, dword [esi + 4]
cmp edx, ecx
je 0x10018c92
cmp edi, ebx
mov esi, ebx
cmovb esi, edi
sub esi, 4
jb 0x10018991
lea ecx, [ecx]
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x10018996
add edx, 4
add ecx, 4
sub esi, 4
jae 0x10018980
cmp esi, 0xfffffffc
je 0x100189d3
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x10019b02
cmp esi, 0xfffffffd
je 0x100189d3
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x10019b02
cmp esi, 0xfffffffe
je 0x100189d3
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x10019b02
cmp esi, 0xffffffff
je 0x100189d3
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
jne 0x10019b02
xor eax, eax
test eax, eax
je 0x10018c52
mov edi, eax
mov ecx, dword [ebp + 8]
mov dword [ecx], edi
test edi, edi
je 0x10018c43
xor eax, eax
test edi, edi
setg al
lea eax, [eax*2 - 1]
mov dword [ecx], eax
mov byte [ecx + 0xc], 1
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
ja 0x10018af9
movzx eax, byte [ecx + 0x10019b48]
jmp dword [eax*4 + 0x10019b0c]
xor eax, eax
cmp ecx, edx
setge al
dec eax
mov ecx, dword [ebp + 8]
mov dword [ecx], eax
mov byte [ecx + 0xc], 1
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp al, 0x30
jl 0x1001894a
cmp dl, 0x30
je 0x10018c59
cmp byte [ecx], 0x30
je 0x10019050
mov byte [esp + 0x12], 1
xor edx, edx
cmp edx, 0xb
jge 0x100193e5
mov al, byte [ecx]
cmp al, 0x30
jl 0x10018a83
cmp al, 0x39
jg 0x10018a83
inc edx
inc ecx
mov dword [esp + 0x28], edx
mov dword [esp + 0x1c], ecx
jmp 0x10018a64
cmp dword [esp + 0x18], 0x10
je 0x103a5b3c
cmp dword [esp + 0x18], 0xa
jne 0x103a5b54
mov al, byte [ecx]
cmp al, 0x2e
je 0x100191c7
cmp al, 0x65
je 0x100195ee
cmp al, 0x45
je 0x100195ee
cmp edx, 0xb
jge 0x100193f5
mov eax, dword [esp + 0x14]
add eax, ebx
cmp ecx, eax
jne 0x10018952
cmp byte [esp + 0x12], 1
jne 0x1001935d
cmp edx, 0xa
je 0x1001937f
push dword [esp + 0x18]
push 0
push ebx
call dword [sym.imp.MSVCR110.dll_strtol]
mov dword [esp + 0x3c], eax
add esp, 0xc
mov al, 1
jmp 0x10018954
cmp dl, 5
je 0x10019632
cmp bl, 5
je 0x103a53ad
cmp dl, 5
je 0x10019644
cmp bl, 5
je 0x103a53fe
cmp dword [esp + 0x34], 0
jne 0x100190a4
test dl, dl
je 0x1001930a
test bl, bl
je 0x10019454
cmp dl, 3
je 0x10019227
cmp bl, 3
je 0x1001929f
mov ebx, dword [ebp + 8]
cmp esi, ebx
je 0x103a542c
mov eax, dword [esp + 0x30]
cmp eax, 6
jne 0x10018f2f
mov ecx, dword [esi + 4]
mov edx, dword [esi]
xor esi, esi
mov dword [esp + 0x1c], 0xa
mov dword [esp + 0x30], esi
xorps xmm0, xmm0
test ecx, ecx
je 0x10018be1
lea esp, [esp]
mov al, byte [edx]
cmp al, 0x20
je 0x10019303
cmp al, 0xa
je 0x10019303
cmp al, 9
je 0x10019303
cmp al, 0xd
je 0x10019303
cmp al, 0xb
je 0x10019303
cmp al, 0xc
je 0x10019303
mov bl, al
mov dword [esp + 0x34], ecx
mov ecx, edx
cmp bl, 0x2d
je 0x10019802
cmp bl, 0x2b
je 0x10019802
mov al, byte [ecx]
cmp al, 0x39
jle 0x10018c99
cmp al, 0x2e
je 0x100194db
mov ebx, dword [ebp + 8]
xor al, al
mov byte [esp + 0x6c], al
test al, al
je case.0x10018f38.0
lea esi, [esp + 0x60]
cmp edi, ebx
je 0x103a54fd
movzx eax, byte [edi + 0xc]
cmp eax, 3
jge 0x10018e7e
cmp eax, 1
jl 0x10018e7e
mov dword [esp + 0x34], 1
jmp 0x10018880
xor eax, eax
mov dword [ecx], eax
mov byte [ecx + 0xc], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
sub edi, ebx
jmp 0x100189df
cmp dword [esp + 0x14], 2
jle 0x10018a54
mov al, byte [ebx + 1]
cmp al, 0x78
je 0x103a5b28
cmp al, 0x58
jne 0x10018a54
jmp 0x103a5b28
xor edi, edi
jmp 0x100189df
cmp al, 0x30
jl 0x10018bd6
cmp bl, 0x30
je 0x10018e5b
mov ebx, dword [esp + 0x1c]
cmp byte [ecx], 0x30
je 0x10019170
mov byte [esp + 0x13], 1
lea esp, [esp]
cmp esi, 0xb
jge 0x1001978b
mov al, byte [ecx]
cmp al, 0x30
jl 0x10018cd7
cmp al, 0x39
jg 0x10018cd7
inc esi
inc ecx
jmp 0x10018cc0
cmp ebx, 0x10
je 0x103a549c
cmp ebx, 0xa
jne 0x103a54b4
mov al, byte [ecx]
cmp al, 0x2e
je 0x10019421
cmp al, 0x65
je 0x10019865
cmp al, 0x45
je 0x10019865
cmp esi, 0xb
jge 0x1001942c
cmp byte [esp + 0x13], 1
jne 0x10019444
cmp esi, 0xa
je 0x1001973a
push ebx
push 0
push edx
call dword [sym.imp.MSVCR110.dll_strtol]
mov ebx, dword [ebp + 8]
mov dword [esp + 0x6c], eax
add esp, 0xc
mov al, 1
jmp 0x10018be3
mov ecx, dword [edi + 4]
mov edx, dword [edi]
mov dword [esp + 0x28], 0xa
mov dword [esp + 0x1c], 0
mov dword [esp + 0x38], 0
xorps xmm0, xmm0
test ecx, ecx
je 0x10018dd6
mov dword [esp + 0x20], 0
jmp 0x10018d70
mov al, byte [edx]
cmp al, 0x20
je 0x1001958c
cmp al, 0xa
je 0x1001958c
cmp al, 9
je 0x1001958c
cmp al, 0xd
je 0x1001958c
cmp al, 0xb
je 0x1001958c
cmp al, 0xc
je 0x1001958c
mov dword [esp + 0x2c], ecx
mov ecx, edx
mov dword [esp + 0x14], edx
mov dl, al
mov dword [esp + 0x18], ecx
cmp dl, 0x2d
je 0x10019954
cmp dl, 0x2b
je 0x10019954
mov al, byte [ecx]
cmp al, 0x39
jle 0x10018f5a
cmp al, 0x2e
je 0x100197d5
xor al, al
xorps xmm2, xmm2
mov edx, dword [esp + 0x20]
movzx ecx, al
test al, al
je 0x1001895f
mov eax, dword [esp + 0x24]
movsd xmm1, qword [esp + 0x40]
test eax, eax
jne 0x1001954a
cmp ebx, 2
je 0x100194f3
cmp ecx, 2
je 0x103a5cd5
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
cmp ecx, edx
jle 0x10018a29
mov ecx, dword [ebp + 8]
mov eax, 1
mov dword [ecx], eax
mov byte [ecx + 0xc], al
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [esp + 0x34], 2
jle 0x10018caa
mov al, byte [edx + 1]
cmp al, 0x78
je 0x103a548b
cmp al, 0x58
jne 0x10018caa
jmp 0x103a548b
cmp eax, 7
ja case.0x10018e87.1
jmp dword [eax*4 + 0x10019bb0]
mov ecx, dword [edi + 4]
mov edx, dword [edi]
xor edi, edi
mov ebx, 0xa
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x30], edi
xorps xmm0, xmm0
test ecx, ecx
je 0x10018f10
lea esp, [esp]
mov al, byte [edx]
cmp al, 0x20
je 0x10019799
cmp al, 0xa
je 0x10019799
cmp al, 9
je 0x10019799
cmp al, 0xd
je 0x10019799
cmp al, 0xb
je 0x10019799
cmp al, 0xc
je 0x10019799
mov dword [esp + 0x34], ecx
mov ch, byte [edx]
mov eax, edx
cmp ch, 0x2d
je 0x10019a0b
cmp ch, 0x2b
je 0x10019a0b
mov cl, byte [eax]
cmp cl, 0x39
jle 0x100190cc
cmp cl, 0x2e
je 0x100198e8
xor al, al
mov byte [esp + 0x7c], al
test al, al
je case.0x10018e87.0
lea edi, [esp + 0x70]
mov dword [esp + 0x34], 1
jmp 0x10018880
cmp eax, 7
ja case.0x10018f38.1
jmp dword [eax*4 + 0x10019bd0]
cmp al, 0x30
jl 0x10018dce
cmp dl, 0x30
je 0x1001905f
cmp byte [ecx], 0x30
je 0x10019370
mov dh, 1
xor eax, eax
jmp 0x10018f80
cmp eax, 0xb
jge 0x10019900
mov al, byte [ecx]
cmp al, 0x30
jl 0x10018fa3
cmp al, 0x39
jg 0x10018fa3
mov eax, dword [esp + 0x1c]
inc eax
inc ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ecx
jmp 0x10018f80
cmp dword [esp + 0x28], 0x10
je 0x103a5bf2
cmp dword [esp + 0x28], 0xa
jne 0x10019af9
mov al, byte [ecx]
cmp al, 0x2e
je 0x100197a0
cmp al, 0x65
je 0x100199c7
cmp al, 0x45
je 0x100199c7
mov eax, dword [esp + 0x1c]
cmp eax, 0xb
jge 0x10019910
mov eax, dword [esp + 0x14]
add eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x18]
cmp ecx, eax
jne 0x10018dd6
cmp dh, 1
jne 0x10019817
cmp dword [esp + 0x1c], 0xa
je 0x100198a9
mov eax, dword [esp + 0x14]
push dword [esp + 0x28]
push 0
push eax
call dword [sym.imp.MSVCR110.dll_strtol]
mov dword [esp + 0x40], eax
add esp, 0xc
mov al, 1
jmp 0x10018dd8
inc ecx
cmp byte [ecx], 0x30
je 0x10019050
mov dword [esp + 0x1c], ecx
jmp 0x10018a5d
cmp dword [esp + 0x2c], 2
jle 0x10018f6b
mov eax, dword [esp + 0x14]
mov al, byte [eax + 1]
cmp al, 0x78
je 0x103a5bde
cmp al, 0x58
jne 0x10018f6b
jmp 0x103a5bde
mov dword [esp + 0x70], 0
mov byte [esp + 0x7c], 1
lea edi, [esp + 0x70]
mov dword [esp + 0x34], 1
jmp 0x10018880
mov al, byte [esi + 0xc]
cmp al, 4
jne 0x100193c3
mov eax, dword [ebp + 8]
mov dword [eax], 1
mov byte [eax + 0xc], 1
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
inc ebx
dec ecx
jmp 0x100188f0
cmp cl, 0x30
jl 0x10018f07
cmp ch, 0x30
je 0x1001917c
cmp byte [eax], 0x30
je 0x100195c0
mov byte [esp + 0x13], 1
lea esp, [esp]
cmp edi, 0xb
jge 0x100199b9
mov cl, byte [eax]
cmp cl, 0x30
jl 0x10019109
cmp cl, 0x39
jg 0x10019109
inc edi
inc eax
jmp 0x100190f0
cmp ebx, 0x10
je 0x103a5526
cmp ebx, 0xa
jne 0x103a5542
mov cl, byte [eax]
cmp cl, 0x2e
je 0x10019828
cmp cl, 0x65
je 0x10019a13
cmp cl, 0x45
je 0x10019a13
cmp edi, 0xb
jge 0x10019833
cmp byte [esp + 0x13], 1
jne 0x1001984b
cmp edi, 0xa
je 0x10019964
push ebx
push 0
push edx
call dword [sym.imp.MSVCR110.dll_strtol]
mov dword [esp + 0x7c], eax
add esp, 0xc
mov al, 1
jmp 0x10018f12
inc ecx
cmp byte [ecx], 0x30
jne 0x10018cb7
jmp 0x10019170
cmp dword [esp + 0x34], 2
jle 0x100190de
mov cl, byte [edx + 1]
cmp cl, 0x78
je 0x103a5515
cmp cl, 0x58
jne 0x100190de
jmp 0x103a5515
cmp dword [esp + 0x2c], 1
jge 0x10018aa3
lea eax, [esp + 0x1c]
push eax
push ebx
mov byte [esp + 0x1a], 2
call sym.php5.dll_zend_strtod
mov edx, dword [esp + 0x30]
fstp qword [esp + 0x40]
mov ecx, dword [esp + 0x24]
movsd xmm0, qword [esp + 0x40]
add esp, 8
jmp 0x10018abc
mov al, byte [ecx + 1]
cmp al, 0x30
jl 0x10018952
cmp al, 0x39
jg 0x10018952
jmp 0x100191d2
mov edx, dword [ebp + 8]
cmp edi, edx
je 0x103a593c
mov al, byte [edi + 0xc]
cmp al, 3
je 0x1001926a
movzx eax, al
cmp eax, 6
jne 0x100194a7
mov eax, dword [edi + 4]
test eax, eax
je case.0x100194ac.0
cmp eax, 1
je 0x100194c3
mov dword [esp + 0x70], 1
mov byte [esp + 0x7c], 3
lea edi, [esp + 0x70]
mov eax, dword [esi]
xor ecx, ecx
sub eax, dword [edi]
je 0x1001927e
test eax, eax
setg cl
lea ecx, [ecx*2 - 1]
mov dword [edx], ecx
mov byte [edx + 0xc], 1
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [esp + 0x60], 0
mov byte [esp + 0x6c], 1
jmp 0x10018bef
mov ecx, dword [ebp + 8]
cmp esi, ecx
je 0x103a58bc
mov al, byte [esi + 0xc]
cmp al, 3
je 0x100192e2
movzx eax, al
cmp eax, 6
jne 0x100195cc
mov eax, dword [esi + 4]
test eax, eax
je case.0x100195d1.0
cmp eax, 1
je 0x10019593
mov dword [esp + 0x60], 1
mov byte [esp + 0x6c], 3
lea esi, [esp + 0x60]
mov eax, dword [esi]
sub eax, dword [edi]
je 0x10018c43
test eax, eax
jle 0x1001934b
mov eax, 1
mov dword [ecx], eax
mov byte [ecx + 0xc], al
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
inc edx
dec ecx
jmp 0x10018b80
mov ecx, dword [ebp + 8]
cmp edi, ecx
je 0x103a5a47
mov al, byte [edi + 0xc]
cmp al, 3
je 0x10019342
movzx eax, al
cmp eax, 1
jne 0x103a5a58
cmp dword [edi], 0
je case.0x103a5a61.0
mov dword [esp + 0x70], 1
mov byte [esp + 0x7c], 3
lea edi, [esp + 0x70]
cmp dword [edi], 0
je 0x10018c43
or eax, 0xffffffff
mov dword [ecx], eax
mov byte [ecx + 0xc], 1
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movsd qword [esp + 0x40], xmm0
mov al, 2
jmp 0x10018954
inc ecx
cmp byte [ecx], 0x30
je 0x10019370
mov dword [esp + 0x18], ecx
jmp 0x10018f74
mov eax, 0x1053c0c4
add ecx, 0xfffffff6
jmp 0x10019390
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x1001992a
test dl, dl
je 0x100193b4
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x1001992a
add ecx, 2
add eax, 2
test dl, dl
jne 0x10019390
xor eax, eax
test eax, eax
js 0x10018ade
jmp 0x103a5b9e
mov cl, byte [edi + 0xc]
cmp cl, 4
jne 0x103a5afb
mov ecx, dword [ebp + 8]
xor eax, eax
mov dword [ecx], 0xffffffff
mov byte [ecx + 0xc], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [esp + 0x18], 0xa
je 0x10018ab3
jmp 0x103a5b54
cmp byte [ebx], 0x2d
je 0x103a5b92
mov dword [esp + 0x24], 1
jmp 0x100191d2
cmp dword [esp + 0x30], 1
jge 0x10018cf3
lea eax, [esp + 0x34]
push eax
push edx
call sym.php5.dll_zend_strtod
fstp qword [esp + 0x48]
add esp, 8
movsd xmm0, qword [esp + 0x40]
mov ebx, dword [ebp + 8]
movsd qword [esp + 0x60], xmm0
mov al, 2
jmp 0x10018be3
mov ecx, dword [ebp + 8]
cmp esi, ecx
je 0x103a59b9
mov al, byte [esi + 0xc]
cmp al, 3
je 0x1001948f
movzx eax, al
cmp eax, 4
jne 0x100197ea
mov eax, dword [esi]
cmp dword [eax + 8], 0
je case.0x100197f3.0
mov dword [esp + 0x60], 1
mov byte [esp + 0x6c], 3
lea esi, [esp + 0x60]
cmp dword [esi], 0
jne 0x100192f0
xor eax, eax
mov dword [ecx], eax
mov byte [ecx + 0xc], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 7
ja case.0x100194ac.0
jmp dword [eax*4 + 0x10019bf0]
xor eax, eax
cmp dword [edi], eax
setne al
mov dword [esp + 0x70], eax
jmp 0x10019261
mov eax, dword [edi]
cmp byte [eax], 0x30
jne 0x10019259
mov dword [esp + 0x70], 0
jmp 0x10019261
mov al, byte [ecx + 1]
cmp al, 0x30
jl 0x10018bde
cmp al, 0x39
jg 0x10018bde
jmp 0x1001942c
cmp ecx, 2
jne 0x10019858
ucomisd xmm1, xmm2
lahf
test ah, 0x44
jnp 0x10019a92
mov ecx, dword [ebp + 8]
subsd xmm1, xmm2
ucomisd xmm1, qword [0x10549318]
movsd qword [ecx], xmm1
lahf
test ah, 0x44
jnp 0x10018c43
xor eax, eax
comisd xmm1, xmmword [0x10549318]
mov byte [ecx + 0xc], 1
seta al
lea eax, [eax*2 - 1]
mov dword [ecx], eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, edx
jne 0x10018dfc
movapd xmm0, xmm1
subsd xmm0, xmm2
ucomisd xmm0, qword [0x10549318]
lahf
test ah, 0x44
mov eax, dword [esp + 0x24]
jp 0x10018dfc
jmp 0x103a5c9d
inc edx
dec ecx
jmp 0x10018d70
mov eax, dword [esi]
cmp byte [eax], 0x30
jne 0x100192d1
mov dword [esp + 0x60], 0
jmp 0x100192d9
lea ecx, [ebx + 1]
mov dword [esp + 0x1c], ecx
jmp 0x10018940
inc eax
cmp byte [eax], 0x30
jne 0x100190e7
jmp 0x100195c0
cmp eax, 7
ja case.0x100195d1.0
jmp dword [eax*4 + 0x10019c10]
cmp dword [esi], 0
jne 0x100192d1
mov dword [esp + 0x60], 0
jmp 0x100192d9
xor eax, eax
cmp eax, 2
jge 0x10018ab3
mov dl, byte [ecx + 1]
lea eax, [ecx + 1]
mov byte [esp + 0x13], dl
cmp dl, 0x2d
mov edx, dword [esp + 0x28]
je 0x103a5b86
cmp byte [esp + 0x13], 0x2b
je 0x103a5b86
mov al, byte [eax]
cmp al, 0x30
jl 0x10018ab3
cmp al, 0x39
jle 0x100191d2
jmp 0x10018ab3
mov eax, dword [esi + 4]
cmp dword [eax + 0x6c], 0
je 0x10018b02
jmp 0x103a55f5
cmp bl, 5
je 0x103a53cd
cmp dl, 5
jne 0x10018b14
mov eax, dword [esi + 4]
cmp dword [eax + 0x20], 0
jne 0x103a56d0
cmp bl, dl
je 0x103a53fe
cmp dword [eax + 0x54], 0
je 0x10018b14
push 0x18
call sym.php5.dll__emalloc
mov ebx, eax
add esp, 4
mov dword [ebx + 0x10], 0
movq xmm0, qword [sym.php5.dll_zval_used_for_init]
movq qword [ebx], xmm0
movq xmm0, qword [0x106694f8]
movq qword [ebx + 8], xmm0
movzx eax, byte [edi + 0xc]
mov ecx, dword [esi + 4]
push eax
mov eax, dword [ecx + 0x54]
push ebx
push esi
call eax
mov ecx, dword [ebp + 8]
add esp, 0xc
cmp eax, 0xffffffff
je 0x103a5613
push edi
push ebx
push ecx
call sym.php5.dll_compare_function
add esp, 0xc
mov dword [esp + 0x28], ebx
cmp dword [ebx + 8], 0
mov esi, eax
je 0x103a5686
lea eax, [esp + 0x28]
push eax
call sym.php5.dll__zval_ptr_dtor
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 0x1053c0c4
add ecx, 0xfffffff6
mov bl, byte [ecx]
cmp bl, byte [eax]
mov byte [esp + 0x13], bl
mov ebx, dword [esp + 0x1c]
jne 0x10019a01
cmp byte [esp + 0x13], 0
je 0x1001977c
mov bl, byte [ecx + 1]
cmp bl, byte [eax + 1]
mov byte [esp + 0x13], bl
mov ebx, dword [esp + 0x1c]
jne 0x10019a01
add ecx, 2
add eax, 2
cmp byte [esp + 0x13], 0
jne 0x10019742
xor eax, eax
test eax, eax
js 0x10018d20
jmp 0x103a54d9
cmp ebx, 0xa
je 0x10018d03
jmp 0x103a54b4
inc edx
dec ecx
jmp 0x10018eb0
cmp dword [esp + 0x38], 1
jge 0x10018fc3
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push ecx
push eax
mov byte [esp + 0x1b], 2
call sym.php5.dll_zend_strtod
mov dh, byte [esp + 0x1b]
fstp qword [esp + 0x40]
add esp, 8
movsd xmm0, qword [esp + 0x38]
jmp 0x10018fe0
mov al, byte [ecx + 1]
cmp al, 0x30
jl 0x10018dd6
cmp al, 0x39
jg 0x10018dd6
jmp 0x100197ab
cmp eax, 7
ja case.0x100197f3.0
jmp dword [eax*4 + 0x10019c30]
cmp dword [esi], 0
jmp 0x10019478
lea ecx, [edx + 1]
jmp 0x10018bcc
mov dword [esp + 0x70], 0
jmp 0x10019339
movapd xmm2, xmm0
movsd qword [esp + 0x48], xmm2
mov al, 2
jmp 0x10018ddb
cmp dword [esp + 0x30], 1
jge 0x10019126
lea eax, [esp + 0x34]
push eax
push edx
call sym.php5.dll_zend_strtod
fstp qword [esp + 0x48]
add esp, 8
movsd xmm0, qword [esp + 0x40]
movsd qword [esp + 0x70], xmm0
mov al, 2
jmp 0x10018f12
test eax, eax
jne 0x10018a31
jmp 0x103a5cf6
xor eax, eax
cmp eax, 2
jge 0x10018d03
mov bl, byte [ecx + 1]
lea eax, [ecx + 1]
mov byte [esp + 0x12], bl
cmp bl, 0x2d
mov ebx, dword [esp + 0x1c]
je 0x10019acc
cmp byte [esp + 0x12], 0x2b
je 0x10019acc
mov al, byte [eax]
cmp al, 0x30
jl 0x10018d03
cmp al, 0x39
jle 0x1001942c
jmp 0x10018d03
mov eax, 0x1053c0c4
add ecx, 0xfffffff6
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x10019a88
test dl, dl
je 0x100198d5
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x10019a88
add ecx, 2
add eax, 2
test dl, dl
jne 0x100198b1
xor eax, eax
test eax, eax
mov eax, dword [esp + 0x14]
js 0x1001900c
jmp 0x103a5c5d
mov al, byte [eax + 1]
cmp al, 0x30
jl 0x10018f10
cmp al, 0x39
jg 0x10018f10
jmp 0x10019833
cmp dword [esp + 0x28], 0xa
je 0x10018fd7
jmp 0x103a5c2b
mov eax, dword [esp + 0x14]
cmp byte [eax], 0x2d
je 0x103a5c1f
mov dword [esp + 0x20], 1
jmp 0x100197af
sbb eax, eax
or eax, 1
jmp 0x100193b6
mov eax, dword [esp + 0x14]
lea ecx, [eax + 1]
mov dword [esp + 0x18], ecx
jmp 0x10018dc4
mov ecx, 0x1053c0c4
add eax, 0xfffffff6
lea esp, [esp]
mov bl, byte [eax]
cmp bl, byte [ecx]
mov byte [esp + 0x13], bl
mov ebx, dword [esp + 0x1c]
jne 0x10019adc
cmp byte [esp + 0x13], 0
je 0x100199aa
mov bl, byte [eax + 1]
cmp bl, byte [ecx + 1]
mov byte [esp + 0x13], bl
mov ebx, dword [esp + 0x1c]
jne 0x10019adc
add eax, 2
add ecx, 2
cmp byte [esp + 0x13], 0
jne 0x10019970
xor eax, eax
test eax, eax
js 0x10019155
jmp 0x103a5567
cmp ebx, 0xa
je 0x10019138
jmp 0x103a5542
xor eax, eax
cmp eax, 2
jge 0x10018fd3
mov dl, byte [ecx + 1]
lea eax, [ecx + 1]
cmp dl, 0x2d
je 0x103a5c13
cmp dl, 0x2b
je 0x103a5c13
mov al, byte [eax]
cmp al, 0x30
jl 0x10018fd3
cmp al, 0x39
jle 0x100197ab
jmp 0x10018fd3
sbb eax, eax
or eax, 1
jmp 0x1001977e
lea eax, [edx + 1]
jmp 0x10018efc
xor ecx, ecx
cmp ecx, 2
jge 0x10019138
mov bl, byte [eax + 1]
lea ecx, [eax + 1]
cmp bl, 0x2d
je 0x10019ad4
cmp bl, 0x2b
je 0x10019ad4
mov cl, byte [ecx]
cmp cl, 0x30
jl 0x10019a46
cmp cl, 0x39
jle 0x10019833
mov ebx, dword [esp + 0x1c]
jmp 0x10019138
mov ecx, dword [ebp + 8]
xor eax, eax
mov dword [ecx], 1
mov byte [ecx + 0xc], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [esp + 0x60], 0
jmp 0x10019486
sbb eax, eax
or eax, 1
jmp 0x100198d7
sub esp, 8
movsd qword [esp], xmm1
call dword [sym.imp.MSVCR110.dll__finite]
add esp, 8
test eax, eax
je 0x1001895f
movsd xmm1, qword [esp + 0x40]
movsd xmm2, qword [esp + 0x48]
jmp 0x1001950a
mov eax, dword [esi]
mov dword [esp + 0x60], eax
mov byte [esp + 0x6c], 1
jmp 0x10018bef
mov ecx, eax
inc eax
jmp 0x10019892
mov eax, ecx
inc ecx
jmp 0x10019a36
sbb eax, eax
or eax, 1
jmp 0x100199ac
pop edi
pop esi
mov dword [ecx], 0
mov byte [ecx + 0xc], 1
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0x1c]
jmp 0x103a5c2b
sbb eax, eax
or eax, 1
jmp 0x100189d5
mov eax, dword [edi + 4]
cmp dword [eax + 0x6c], 0
je 0x10018b0b
mov ecx, dword [ebp + 8]
mov eax, dword [eax + 0x6c]
push edi
push esi
push ecx
call eax
add esp, 0xc
jmp 0x10018a02
mov eax, dword [esi]
cmp eax, dword [edi]
je 0x103a560b
mov eax, dword [esi + 4]
mov ecx, dword [edi + 4]
mov eax, dword [eax + 0x50]
cmp eax, dword [ecx + 0x50]
jne 0x1001964d
mov eax, dword [esi + 4]
push edi
mov eax, dword [eax + 0x50]
push esi
call eax
mov ecx, dword [ebp + 8]
add esp, 8
jmp 0x100189fa
mov eax, dword [edi + 4]
cmp dword [eax + 0x20], 0
jne 0x103a5846
cmp dl, 5
je 0x10019a4f
cmp dword [eax + 0x54], 0
jne 0x103a575b
cmp dl, 5
je 0x10019a4f
jmp 0x10018b1d
cmp dl, 1
je case.0x10018f38.1
push esi
call sym.php5.dll_convert_scalar_to_number
add esp, 4
jmp case.0x10018f38.1
movq xmm0, qword [esi]
movq qword [esp + 0x60], xmm0
movq xmm0, qword [esi + 8]
movq qword [esp + 0x68], xmm0
cmp byte [esp + 0x6c], 3
jbe 0x103a546c
lea eax, [esp + 0x60]
push eax
call sym.php5.dll__zval_copy_ctor_func
add esp, 4
lea eax, [esp + 0x60]
push 0xa
push eax
call sym.php5.dll_convert_to_long_base
add esp, 8
cmp byte [esp + 0x6c], 1
jne case.0x10018f38.1
jmp 0x10018bef
mov ebx, 0x10
mov dword [esp + 0x1c], ebx
add ecx, 2
jmp 0x10018cae
cmp al, 0x41
jl 0x103a54a8
cmp al, 0x46
jle 0x10018cd3
cmp al, 0x61
jl 0x103a54b4
cmp al, 0x66
jle 0x10018cd3
cmp esi, 8
jl 0x10018d0c
jne 0x103a54c9
cmp byte [ecx - 8], 0x37
jle 0x10018d0c
lea eax, [esp + 0x34]
push eax
push edx
call sym.php5.dll_zend_hex_strtod
jmp 0x10019437
jne 0x103a54e4
cmp byte [edx], 0x2d
je 0x10018d20
push 0
push edx
call sym.php5.dll_zend_strtod
fstp qword [esp + 0x68]
mov ebx, dword [ebp + 8]
add esp, 8
mov al, 2
jmp 0x10018be3
cmp byte [edi + 0xc], 1
je case.0x10018e87.1
push edi
call sym.php5.dll_convert_scalar_to_number
add esp, 4
jmp case.0x10018e87.1
mov ebx, 0x10
mov dword [esp + 0x1c], ebx
add eax, 2
jmp 0x100190de
cmp cl, 0x41
jl 0x103a5534
cmp cl, 0x46
jle 0x10019105
cmp cl, 0x61
jl 0x103a5542
cmp cl, 0x66
jle 0x10019105
cmp edi, 8
jl 0x10019141
jne 0x103a5557
cmp byte [eax - 8], 0x37
jle 0x10019141
lea eax, [esp + 0x34]
push eax
push edx
call sym.php5.dll_zend_hex_strtod
jmp 0x1001983e
jne 0x103a5572
cmp byte [edx], 0x2d
je 0x10019155
push 0
push edx
call sym.php5.dll_zend_strtod
fstp qword [esp + 0x78]
add esp, 8
mov al, 2
jmp 0x10018f12
mov eax, dword [edi]
mov dword [esp + 0x70], eax
mov byte [esp + 0x7c], 1
lea edi, [esp + 0x70]
jmp case.0x10018e87.1
movq xmm0, qword [edi]
movq qword [esp + 0x70], xmm0
movq xmm0, qword [edi + 8]
movq qword [esp + 0x78], xmm0
cmp byte [esp + 0x7c], 3
jbe 0x103a55c5
lea eax, [esp + 0x70]
push eax
call sym.php5.dll__zval_copy_ctor_func
add esp, 4
lea eax, [esp + 0x70]
push 0xa
push eax
call sym.php5.dll_convert_to_long_base
add esp, 8
cmp byte [esp + 0x7c], 1
lea eax, [esp + 0x70]
cmovne eax, edi
mov edi, eax
jmp case.0x10018e87.1
mov eax, dword [esi + 4]
mov ecx, dword [ebp + 8]
mov eax, dword [eax + 0x6c]
push edi
push esi
push ecx
call eax
add esp, 0xc
jmp 0x10018a02
mov ecx, dword [ebp + 8]
jmp 0x10019ae6
mov dword [ecx], 1
mov byte [ecx + 0xc], 1
mov dword [esp + 0x28], ebx
cmp dword [ebx + 8], 0
jne 0x103a5674
test dword [ebx + 0x10], 0xfffffffc
je 0x103a563d
push ebx
call sym.php5.dll_gc_remove_zval_from_buffer
mov ebx, dword [esp + 0x2c]
add esp, 4
cmp byte [ebx + 0xc], 3
jbe 0x103a5650
push ebx
call sym.php5.dll__zval_dtor_func
mov ebx, dword [esp + 0x2c]
add esp, 4
test dword [ebx + 0x10], 0xfffffffc
je 0x103a5666
push ebx
call sym.php5.dll_gc_remove_zval_from_buffer
mov ebx, dword [esp + 0x2c]
add esp, 4
push ebx
call sym.php5.dll__efree
add esp, 4
jmp 0x10018a00
lea eax, [esp + 0x28]
push eax
call sym.php5.dll__zval_ptr_dtor
add esp, 4
jmp 0x10018a00
test dword [ebx + 0x10], 0xfffffffc
je 0x103a569c
push ebx
call sym.php5.dll_gc_remove_zval_from_buffer
mov ebx, dword [esp + 0x2c]
add esp, 4
cmp byte [ebx + 0xc], 3
jbe 0x103a56af
push ebx
call sym.php5.dll__zval_dtor_func
mov ebx, dword [esp + 0x2c]
add esp, 4
test dword [ebx + 0x10], 0xfffffffc
je 0x103a56c5
push ebx
call sym.php5.dll_gc_remove_zval_from_buffer
mov ebx, dword [esp + 0x2c]
add esp, 4
push ebx
call sym.php5.dll__efree
jmp 0x100196e4
mov eax, dword [esi + 4]
push esi
mov eax, dword [eax + 0x20]
call eax
mov ecx, dword [ebp + 8]
add esp, 4
mov esi, eax
push edi
push esi
push ecx
call sym.php5.dll_compare_function
add esp, 0xc
mov dword [esp + 0x28], esi
cmp dword [esi + 8], 0
mov edi, eax
jne 0x103a5747
test dword [esi + 0x10], 0xfffffffc
je 0x103a570e
push esi
call sym.php5.dll_gc_remove_zval_from_buffer
mov esi, dword [esp + 0x2c]
add esp, 4
cmp byte [esi + 0xc], 3
jbe 0x103a5721
push esi
call sym.php5.dll__zval_dtor_func
mov esi, dword [esp + 0x2c]
add esp, 4
test dword [esi + 0x10], 0xfffffffc
je 0x103a5737
push esi
call sym.php5.dll_gc_remove_zval_from_buffer
mov esi, dword [esp + 0x2c]
add esp, 4
push esi
call sym.php5.dll__efree
add esp, 4
mov eax, edi
jmp 0x10018a02
lea eax, [esp + 0x28]
push eax
call sym.php5.dll__zval_ptr_dtor
add esp, 4
mov eax, edi
jmp 0x10018a02
push 0x18
call sym.php5.dll__emalloc
mov ebx, eax
add esp, 4
mov dword [ebx + 0x10], 0
movq xmm0, qword [sym.php5.dll_zval_used_for_init]
movq qword [ebx], xmm0
movq xmm0, qword [0x106694f8]
movq qword [ebx + 8], xmm0
movzx ecx, byte [esi + 0xc]
mov eax, dword [edi + 4]
push ecx
mov eax, dword [eax + 0x54]
push ebx
push edi
call eax
mov ecx, dword [ebp + 8]
add esp, 0xc
cmp eax, 0xffffffff
jne 0x103a57f0
mov dword [ecx], eax
mov byte [ecx + 0xc], 1
mov dword [esp + 0x28], ebx
cmp dword [ebx + 8], 0
jne 0x103a5674
test dword [ebx + 0x10], 0xfffffffc
je 0x103a57cb
push ebx
call sym.php5.dll_gc_remove_zval_from_buffer
mov ebx, dword [esp + 0x2c]
add esp, 4
cmp byte [ebx + 0xc], 3
jbe 0x103a57de
push ebx
call sym.php5.dll__zval_dtor_func
mov ebx, dword [esp + 0x2c]
add esp, 4
test dword [ebx + 0x10], 0xfffffffc
je 0x103a5666
jmp 0x103a5659
push ebx
push esi
push ecx
call sym.php5.dll_compare_function
add esp, 0xc
mov dword [esp + 0x28], ebx
cmp dword [ebx + 8], 0
mov esi, eax
jne 0x100196da
test dword [ebx + 0x10], 0xfffffffc
je 0x103a5821
push ebx
call sym.php5.dll_gc_remove_zval_from_buffer
mov ebx, dword [esp + 0x2c]
add esp, 4
cmp byte [ebx + 0xc], 3
jbe 0x103a5834
push ebx
call sym.php5.dll__zval_dtor_func
mov ebx, dword [esp + 0x2c]
add esp, 4
test dword [ebx + 0x10], 0xfffffffc
je 0x103a56c5
jmp 0x103a56b8
mov eax, dword [edi + 4]
push edi
mov eax, dword [eax + 0x20]
call eax
mov ecx, dword [ebp + 8]
add esp, 4
mov edi, eax
push edi
push esi
push ecx
call sym.php5.dll_compare_function
add esp, 0xc
mov dword [esp + 0x28], edi
cmp dword [edi + 8], 0
mov esi, eax
jne 0x100196da
test dword [edi + 0x10], 0xfffffffc
je 0x103a5888
push edi
call sym.php5.dll_gc_remove_zval_from_buffer
mov edi, dword [esp + 0x2c]
add esp, 4
cmp byte [edi + 0xc], 3
jbe 0x103a589b
push edi
call sym.php5.dll__zval_dtor_func
mov edi, dword [esp + 0x2c]
add esp, 4
test dword [edi + 0x10], 0xfffffffc
je 0x103a58b1
push edi
call sym.php5.dll_gc_remove_zval_from_buffer
mov edi, dword [esp + 0x2c]
add esp, 4
push edi
call sym.php5.dll__efree
jmp 0x100196e4
push esi
call sym.php5.dll_convert_to_boolean
mov ecx, dword [ebp + 8]
add esp, 4
jmp 0x100192e2
movsd xmm0, qword [esi]
ucomisd xmm0, qword [0x10549318]
lahf
test ah, 0x44
jnp case.0x100195d1.0
jmp 0x100192d1
mov eax, dword [esi]
xor ecx, ecx
cmp dword [eax + 8], ecx
setne cl
mov dword [esp + 0x60], ecx
mov ecx, dword [ebp + 8]
jmp 0x100192d9
movq xmm0, qword [esi]
movq qword [esp + 0x60], xmm0
movq xmm0, qword [esi + 8]
movq qword [esp + 0x68], xmm0
cmp byte [esp + 0x6c], 3
jbe 0x103a5927
lea eax, [esp + 0x60]
push eax
call sym.php5.dll__zval_copy_ctor_func
add esp, 4
lea eax, [esp + 0x60]
push eax
call sym.php5.dll_convert_to_boolean
mov ecx, dword [ebp + 8]
add esp, 4
jmp 0x100192d9
push edi
call sym.php5.dll_convert_to_boolean
mov edx, dword [ebp + 8]
add esp, 4
jmp 0x1001926a
movsd xmm0, qword [edi]
ucomisd xmm0, qword [0x10549318]
lahf
test ah, 0x44
jnp case.0x100194ac.0
jmp 0x10019259
mov eax, dword [edi]
xor ecx, ecx
cmp dword [eax + 8], ecx
setne cl
mov dword [esp + 0x70], ecx
jmp 0x10019261
movq xmm0, qword [edi]
movq qword [esp + 0x70], xmm0
movq xmm0, qword [edi + 8]
movq qword [esp + 0x78], xmm0
cmp byte [esp + 0x7c], 3
jbe 0x103a59a4
lea eax, [esp + 0x70]
push eax
call sym.php5.dll__zval_copy_ctor_func
add esp, 4
lea eax, [esp + 0x70]
push eax
call sym.php5.dll_convert_to_boolean
mov edx, dword [ebp + 8]
add esp, 4
jmp 0x10019261
push esi
call sym.php5.dll_convert_to_boolean
mov ecx, dword [ebp + 8]
add esp, 4
jmp 0x1001948f
movsd xmm0, qword [esi]
ucomisd xmm0, qword [0x10549318]
lahf
test ah, 0x44
jnp case.0x100197f3.0
jmp 0x1001947e
mov eax, dword [esi + 4]
test eax, eax
je case.0x100197f3.0
cmp eax, 1
jne 0x1001947e
mov eax, dword [esi]
cmp byte [eax], 0x30
je case.0x100197f3.0
jmp 0x1001947e
movq xmm0, qword [esi]
movq qword [esp + 0x60], xmm0
movq xmm0, qword [esi + 8]
movq qword [esp + 0x68], xmm0
cmp byte [esp + 0x6c], 3
jbe 0x103a5a32
lea eax, [esp + 0x60]
push eax
call sym.php5.dll__zval_copy_ctor_func
add esp, 4
lea eax, [esp + 0x60]
push eax
call sym.php5.dll_convert_to_boolean
mov ecx, dword [ebp + 8]
add esp, 4
jmp 0x10019486
push edi
call sym.php5.dll_convert_to_boolean
mov ecx, dword [ebp + 8]
add esp, 4
jmp 0x10019342
cmp eax, 7
ja case.0x103a5a61.0
jmp dword [eax*4 + 0x103a5d09]
movsd xmm0, qword [edi]
ucomisd xmm0, qword [0x10549318]
lahf
test ah, 0x44
jnp case.0x103a5a61.0
jmp 0x10019331
mov eax, dword [edi + 4]
test eax, eax
je case.0x103a5a61.0
cmp eax, 1
jne 0x10019331
mov eax, dword [edi]
cmp byte [eax], 0x30
je case.0x103a5a61.0
jmp 0x10019331
mov eax, dword [edi]
xor ecx, ecx
cmp dword [eax + 8], ecx
setne cl
mov dword [esp + 0x70], ecx
mov ecx, dword [ebp + 8]
jmp 0x10019339
movq xmm0, qword [edi]
movq qword [esp + 0x70], xmm0
movq xmm0, qword [edi + 8]
movq qword [esp + 0x78], xmm0
cmp byte [esp + 0x7c], 3
jbe 0x103a5ae6
lea eax, [esp + 0x70]
push eax
call sym.php5.dll__zval_copy_ctor_func
add esp, 4
lea eax, [esp + 0x70]
push eax
call sym.php5.dll_convert_to_boolean
mov ecx, dword [ebp + 8]
add esp, 4
jmp 0x10019339
cmp al, 5
je 0x10019a4f
cmp cl, 5
mov ecx, dword [ebp + 8]
mov byte [ecx + 0xc], 1
jne 0x103a5b1a
mov dword [ecx], 0xffffffff
jmp 0x10018a00
mov dword [ecx], 0
or eax, 0xffffffff
jmp 0x10018a02
add ecx, 2
mov dword [esp + 0x18], 0x10
mov dword [esp + 0x1c], ecx
jmp 0x10018a54
cmp al, 0x41
jl 0x103a5b48
cmp al, 0x46
jle 0x10018a77
cmp al, 0x61
jl 0x103a5b54
cmp al, 0x66
jle 0x10018a77
cmp edx, 8
jl 0x10018abc
jne 0x103a5b69
cmp byte [ecx - 8], 0x37
jle 0x10018abc
lea eax, [esp + 0x1c]
push eax
push ebx
call sym.php5.dll_zend_hex_strtod
mov dword [esp + 0x2c], 1
mov byte [esp + 0x1a], 2
jmp 0x100191e2
mov ecx, eax
mov dword [esp + 0x1c], ecx
inc eax
jmp 0x1001961b
or eax, 0xffffffff
mov dword [esp + 0x24], eax
jmp 0x100191d2
jne 0x103a5ba9
cmp byte [ebx], 0x2d
je 0x10018ade
push 0
push ebx
call sym.php5.dll_zend_strtod
fstp qword [esp + 0x58]
movsd xmm0, qword [esp + 0x58]
xor eax, eax
add esp, 8
cmp byte [ebx], 0x2d
movsd qword [esp + 0x40], xmm0
setne al
lea eax, [eax*2 - 1]
mov dword [esp + 0x24], eax
mov al, 2
jmp 0x10018954
add ecx, 2
mov dword [esp + 0x28], 0x10
mov dword [esp + 0x18], ecx
jmp 0x10018f6b
cmp al, 0x41
jl 0x103a5bfe
cmp al, 0x46
jle 0x10018f93
cmp al, 0x61
jl 0x10019af9
cmp al, 0x66
jg 0x10019af9
jmp 0x10018f93
mov ecx, eax
mov dword [esp + 0x18], ecx
inc eax
jmp 0x100199ea
or ecx, 0xffffffff
mov dword [esp + 0x20], ecx
jmp 0x100197af
cmp eax, 8
jl 0x10018fe0
jne 0x103a5c40
cmp byte [ecx - 8], 0x37
jle 0x10018fe0
lea eax, [esp + 0x18]
push eax
push dword [esp + 0x18]
call sym.php5.dll_zend_hex_strtod
mov dword [esp + 0x28], 1
mov dh, 2
jmp 0x100197c3
jne 0x103a5c68
cmp byte [eax], 0x2d
je 0x1001900c
push 0
push eax
call sym.php5.dll_zend_strtod
fstp qword [esp + 0x60]
mov eax, dword [esp + 0x1c]
movsd xmm2, qword [esp + 0x60]
xor edx, edx
add esp, 8
cmp byte [eax], 0x2d
mov al, 2
setne dl
movsd qword [esp + 0x48], xmm2
lea edx, [edx*2 - 1]
jmp 0x10018ddf
cmp eax, 1
jne 0x103a5cb5
comisd xmm1, xmmword [0x10549390]
ja 0x1001895f
jmp 0x10018dfc
cmp eax, 0xffffffff
jne 0x10018dfc
movsd xmm0, qword [0x105493a8]
comisd xmm0, xmm1
ja 0x1001895f
jmp 0x10018dfc
test edx, edx
je 0x103a5ce5
mov ecx, dword [ebp + 8]
neg edx
mov dword [ecx], edx
jmp 0x100189fc
mov ecx, dword [esp + 0x30]
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
jmp 0x1001950a
mov edx, dword [esp + 0x34]
movd xmm2, edx
cvtdq2pd xmm2, xmm2
jmp 0x1001950a