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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xc0
mov ecx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov eax, dword [0x101ef014]
xor eax, ebp
mov dword [esp + 0xb8], eax
mov edi, dword [esi + 0x18]
mov eax, dword [edi]
mov dword [esp + 8], eax
mov dword [esp + 0x58], ecx
movzx eax, byte [ecx]
cmp eax, 0x8c
jg 0x1014da47
lea ecx, [eax - 0x2d]
cmp ecx, 0x1e
ja case.default.0x1014d63a
jmp dword [ecx*4 + 0x101b729c]
mov ecx, dword [ebp + 0xc]
mov ebx, dword [ecx + 8]
mov eax, dword [esp + 8]
mov edx, dword [eax]
mov dword [esp + 0x34], edx
mov dword [esp + 0x90], 0
lea edx, [ecx + 0x1c]
mov dword [esp + 0x48], edx
mov dword [ecx + 0x1c], 0xffffffff
xor edx, edx
mov dword [esp + 0x40], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x20], edx
test edx, edx
sete dl
mov dword [esp + 0x60], edx
add ecx, 0x2c
mov dword [esp + 0x44], ecx
add eax, 0x7c
mov dword [esp + 0x54], eax
mov dword [esp + 0x18], ebx
lea eax, [ebx + 1]
mov dword [esp + 0x6c], eax
xor ecx, ecx
xor eax, eax
dec eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], 0
xor esi, esi
mov edx, edi
mov eax, dword [edx + 4]
test eax, eax
mov dword [esp + 0x14], edx
je 0x1014e1bf
mov ebx, edi
cmp dword [eax], 0
jle 0x1014d89c
lea edx, [eax + 8]
mov dword [esp + 0x70], 0
mov dword [esp + 0xc], 0
mov dword [esp + 4], ebx
mov dword [esp + 0x3c], eax
mov edi, dword [edx + 0x10]
mov dword [esp + 0x24], edi
test byte [edx + 0x29], 0x20
mov dword [esp + 0x30], edx
jne 0x1014e59d
cmp dword [esp + 0x20], 0
mov edi, ebx
mov ebx, dword [esp + 0x24]
jne 0x1014d840
mov dword [esp + 0x2c], esi
mov dword [esp + 0x1c], ecx
mov eax, dword [esp + 0x18]
test eax, eax
je 0x1014d839
mov cl, byte [eax]
test cl, cl
je 0x1014d839
xor eax, eax
mov edx, dword [esp + 0x6c]
movzx ecx, cl
add al, byte [ecx + 0x101af7e8]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x1014d736
movsx ecx, word [ebx + 0x22]
mov dword [esp + 0x28], ecx
test ecx, ecx
jle 0x1014e1aa
mov esi, dword [ebx + 4]
xor edi, edi
cmp byte [esi + 0xa], al
je 0x1014d76f
inc edi
add esi, 0x10
cmp edi, dword [esp + 0x28]
jne 0x1014d75b
jmp 0x1014dccf
mov ecx, dword [esi]
mov dword [esp + 0x10], ecx
xor ebx, ebx
mov ecx, dword [esp + 0x10]
movzx ecx, byte [ecx + ebx]
mov edx, dword [esp + 0x18]
movzx edx, byte [edx + ebx]
cmp cl, dl
jne 0x1014df94
test ecx, ecx
je 0x1014d796
inc ebx
jmp 0x1014d777
cmp dword [esp + 0xc], 0
jg 0x1014e866
mov esi, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x24]
inc dword [esp + 0xc]
movsx eax, word [ebx + 0x20]
cmp edi, eax
mov eax, edi
mov ecx, 0xffff
cmove eax, ecx
mov ecx, dword [ebp + 0xc]
mov word [ecx + 0x20], ax
test byte [edx + 0x29], 0x20
jne 0x1014e902
mov ecx, edx
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x3c]
cmp dword [esp + 0xc], 0
je 0x1014dca1
mov ebx, edi
mov edi, dword [esp + 0x70]
inc edi
add edx, 0x48
mov dword [esp + 0x70], edi
cmp edi, dword [eax]
jl 0x1014d6ec
jmp 0x1014d8a4
mov edx, dword [esp + 0x20]
movzx edx, byte [edx + ecx]
movzx ebx, byte [eax + ecx]
cmp dl, bl
jne 0x1014d821
test edx, edx
mov ebx, dword [esp + 0x24]
je 0x1014f0e7
inc ecx
jmp 0x1014d802
mov dl, byte [edx + 0x101af7e8]
cmp dl, byte [ebx + 0x101af7e8]
mov ebx, dword [esp + 0x24]
jne 0x1014de36
jmp 0x1014d81e
xor eax, eax
jmp 0x1014d746
mov dword [esp + 0x2c], esi
mov dword [esp + 0x1c], ecx
cmp dword [esp + 0x38], 0
jne 0x1014ebef
mov edi, dword [edx + 0xc]
test edi, edi
je 0x1014dcec
xor eax, eax
mov ecx, dword [esp + 0x20]
movzx ecx, byte [ecx + eax]
movzx edx, byte [edi + eax]
cmp cl, dl
jne 0x1014d87b
test ecx, ecx
je 0x1014f0e7
inc eax
jmp 0x1014d860
mov cl, byte [ecx + 0x101af7e8]
cmp cl, byte [edx + 0x101af7e8]
jne 0x1014ebfc
jmp 0x1014d878
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x30]
jmp 0x1014d7e7
mov dword [esp + 0xc], 0
test ecx, ecx
je 0x1014e02e
mov edx, dword [esp + 0xc]
mov eax, dword [ecx + 0x2c]
mov edi, ecx
mov ecx, dword [esp + 0x48]
mov dword [ecx], eax
mov eax, dword [edi + 0x10]
mov ecx, dword [esp + 0x44]
mov dword [ecx], eax
mov ecx, edi
test byte [edi + 0x24], 0x48
jne 0x1014e257
mov eax, dword [eax + 0x3c]
mov dword [esp + 0x40], eax
mov edi, ebx
mov eax, edx
test edx, edx
jne 0x1014d8ef
cmp dword [esp + 0x38], 0
mov ebx, dword [esp + 0x14]
jne 0x1014d8f3
jmp 0x1014dc06
mov ebx, dword [esp + 0x14]
test eax, eax
jne 0x1014d904
cmp esi, 1
jne 0x1014d904
test ecx, ecx
jne 0x1014dcf5
test eax, eax
jne 0x1014d99b
jmp 0x1014e2bc
mov edx, dword [esp + 0x18]
movzx edx, byte [edx + ecx]
movzx ebx, byte [ecx + str.ROWID]
cmp dl, bl
je 0x1014d939
mov dl, byte [edx + 0x101af7e8]
cmp dl, byte [ebx + 0x101af7e8]
jne 0x1014e4da
inc ecx
jmp 0x1014d911
test edx, edx
je 0x1014f7d4
jmp 0x1014d936
movzx ecx, cl
add al, byte [ecx + 0x101af7e8]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x1014d943
jmp 0x1014e28e
cmp byte [ecx + 0xa], al
je 0x1014d970
mov edx, esi
inc edx
add ecx, 0x10
mov esi, edx
cmp edx, dword [esp + 0x28]
jne 0x1014d958
jmp 0x1014ec0d
mov edx, dword [ecx]
mov dword [esp + 0x10], edx
xor edi, edi
mov edx, dword [esp + 0x10]
movzx ebx, byte [edx + edi]
mov edx, dword [esp + 0x18]
movzx edx, byte [edx + edi]
cmp bl, dl
jne 0x1014eb7f
test ebx, ebx
je 0x1014def9
inc edi
jmp 0x1014d978
cmp eax, 1
jne 0x1014e7c7
xor eax, eax
inc eax
mov dword [esp + 0xc], eax
mov byte [esp + 0x18], 0xa7
mov ebx, edi
mov esi, dword [ebp + 0xc]
test byte [esi + 6], 0x81
je 0x1014da80
movzx eax, word [esi + 0x20]
test ax, ax
js 0x1014da04
test ecx, ecx
je 0x1014da04
mov edi, ecx
mov ecx, dword [esp + 0x44]
mov ecx, dword [ecx]
test byte [ecx + 0x1c], 0x60
jne 0x1014e915
cmp eax, 0x3f
mov ecx, 0x3f
cmovl ecx, eax
xor eax, eax
inc eax
xor edx, edx
shld edx, eax, cl
xor esi, esi
shl eax, cl
test cl, 0x20
cmovne edx, eax
cmovne eax, esi
or dword [edi + 0x38], eax
or dword [edi + 0x3c], edx
mov eax, dword [ebp + 0xc]
mov cl, byte [esp + 0x18]
mov byte [eax], cl
cmp dword [esp + 0xc], 1
mov esi, dword [esp + 0x14]
mov edi, ebx
jne 0x1014f722
mov eax, dword [esp + 8]
mov edx, dword [eax]
cmp dword [edx + 0x164], 0
jne 0x1014e715
inc dword [edi + 0x10]
xor ebx, ebx
inc ebx
cmp edi, esi
je 0x1014ea58
mov edi, dword [edi + 0xc]
inc dword [edi + 0x10]
jmp 0x1014da37
cmp eax, 0x9b
jle 0x1014daad
cmp eax, 0x9c
jne 0x1014db4e
test byte [edi + 0x18], 0x2e
je case.0x1014d63a.46
mov ecx, dword [esp + 8]
mov edx, edi
mov eax, dword [ebp + 0xc]
push eax
push eax
push str.parameters
call fcn.10170730
add esp, 0xc
jmp case.0x1014d63a.46
mov edx, dword [esi + 0xc]
test edx, edx
jne 0x1014dbe2
mov dword [esi + 0xc], 0
mov edx, dword [esi + 0x10]
test edx, edx
jne 0x1014dbf4
mov dword [esi + 0x10], 0
or byte [esi + 6], 0x80
jmp 0x1014d9bf
cmp eax, 0x8d
jne case.0x1014d63a.46
mov eax, edi
mov edi, dword [ebp + 0xc]
mov esi, dword [edi + 0xc]
mov dword [esp + 4], eax
test byte [eax + 0x18], 0x28
jne 0x1014ec52
mov eax, dword [edi + 0x10]
cmp byte [eax], 0x3b
jne 0x1014ec6f
mov dword [esp + 0x38], 0
mov edi, dword [esp + 4]
mov ecx, dword [esi + 8]
mov dword [esp + 0x20], ecx
mov ebx, dword [eax + 8]
mov edx, dword [esp + 8]
cmp byte [edx + 0xd8], 2
jae 0x1014ec81
mov eax, dword [edx]
mov dword [esp + 0x34], eax
mov dword [esp + 0x90], 0
mov eax, dword [ebp + 0xc]
lea ecx, [eax + 0x1c]
mov dword [esp + 0x48], ecx
mov dword [eax + 0x1c], 0xffffffff
mov dword [esp + 0x40], 0
cmp dword [esp + 0x38], 0
jne 0x1014eca5
mov dword [esp + 0x38], 0
mov eax, dword [esp + 8]
mov ecx, dword [ebp + 0xc]
mov edx, dword [esp + 0x20]
jmp 0x1014d67c
cmp eax, 0xac
je 0x1014dd3e
cmp eax, 0xab
jne case.0x1014d63a.46
mov eax, dword [ebp + 0xc]
mov edi, dword [eax + 0x10]
test edi, edi
je case.0x1014d63a.48
mov eax, dword [edi + 4]
test eax, 0x82000
je 0x1014e9a1
bt eax, 0x13
jb 0x1014db8b
add edi, 0xc
jmp 0x1014db91
mov edi, dword [edi + 0x14]
add edi, 8
mov edi, dword [edi]
jmp 0x1014db6a
cmp eax, 0x8a
je case.0x1014d63a.49
cmp eax, 0x14
jne case.0x1014d63a.46
mov eax, dword [ebp + 0xc]
test byte [eax + 5], 0x10
je case.0x1014d63a.46
mov eax, edi
mov edi, dword [edi + 0x10]
mov ebx, eax
test byte [eax + 0x18], 0x2e
jne 0x1014f3da
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 0x14]
mov ecx, esi
call fcn.1002f720
cmp edi, dword [ebx + 0x10]
jne 0x1014e47d
or byte [ebx + 0x18], 0x40
jmp case.0x1014d63a.46
mov edi, ecx
mov ecx, dword [esp + 0x34]
call fcn.1014c9e0
mov ecx, edi
jmp 0x1014da8b
mov edi, ecx
mov ecx, dword [esp + 0x34]
call fcn.1014c9e0
mov ecx, edi
jmp 0x1014da9d
mov dword [esp + 4], edi
mov dword [esp + 0x1c], ecx
mov eax, dword [esp + 0x54]
mov ecx, dword [eax]
mov dword [esp + 0xc], 0
test ecx, ecx
jne 0x1014de8f
cmp dword [esp + 0x20], 0
je 0x1014de51
mov eax, dword [ebx + 0x18]
mov ecx, 0x200
and eax, ecx
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 4]
je 0x1014de59
mov eax, dword [ebx + 8]
test eax, eax
je 0x1014de59
xor ecx, ecx
movzx edx, byte [ecx + str.excluded]
mov ebx, dword [esp + 0x20]
movzx ebx, byte [ebx + ecx]
cmp dl, bl
je 0x1014dc78
mov dl, byte [edx + 0x101af7e8]
cmp dl, byte [ebx + 0x101af7e8]
jne 0x1014dc90
inc ecx
jmp 0x1014dc54
test edx, edx
jne 0x1014dc75
mov eax, dword [eax + 0x20]
mov eax, dword [eax + 0x18]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x48]
mov dword [eax], 2
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 4]
mov ebx, dword [esp + 0x14]
jmp 0x1014de59
mov eax, dword [ebx + 0x1c]
mov edx, 0x200
and eax, edx
mov edx, dword [esp + 0x30]
mov esi, dword [esp + 0x2c]
cmove ecx, edx
shr eax, 9
xor eax, 1
add esi, eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xc], 0
jmp 0x1014d7e7
mov edi, dword [esp + 4]
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x2c]
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x24]
jmp 0x1014d7dc
mov eax, dword [ebx]
xor ecx, ecx
jmp 0x1014d802
mov eax, ecx
mov ecx, dword [ebx + 0x18]
mov dword [esp + 0x10], ecx
test cl, 0x28
jne 0x1014ee95
xor ecx, ecx
mov edx, dword [esp + 0x18]
movzx edx, byte [edx + ecx]
movzx ebx, byte [ecx + str._ROWID_]
cmp dl, bl
mov esi, 1
je 0x1014ee9f
mov dl, byte [edx + 0x101af7e8]
cmp dl, byte [ebx + 0x101af7e8]
je 0x1014eea7
xor ecx, ecx
jmp 0x1014d911
mov dword [esp + 4], edi
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x14]
mov dword [esp + 0x24], 0
mov dword [esp + 0x10], 0
test eax, eax
je 0x1014dd62
mov ecx, dword [eax]
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov al, byte [ecx + 0x54]
mov ebx, 0x4001
mov edi, dword [ebp + 0xc]
test byte [edi + 7], 1
jne 0x1014eead
mov edx, dword [esp + 4]
lea edi, [edx + 0x18]
mov dword [esp + 0x18], edi
and ebx, dword [edx + 0x18]
mov dword [esp + 0x20], ebx
mov edx, dword [ebp + 0xc]
mov ebx, dword [edx + 8]
movzx edi, al
mov edx, ebx
push 0
push edi
push dword [esp + 0x18]
call fcn.10151720
add esp, 0xc
test eax, eax
je 0x1014eec5
mov edx, eax
mov eax, dword [eax + 0x14]
mov dword [esp + 0x28], eax
test eax, eax
setne bl
mov edi, ebx
test byte [edx + 5], 4
jne 0x1014eeed
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 0x164]
test ecx, ecx
jne 0x1014ef21
mov eax, dword [edx + 4]
test eax, 0x2800
je 0x1014ddf7
mov eax, dword [ebp + 0xc]
or byte [eax + 6], 0x10
mov eax, dword [edx + 4]
bt eax, 0xb
mov ebx, dword [esp + 0x18]
mov eax, dword [ebx]
jb 0x1014e09b
test al, 0x2a
je 0x1014e0ad
mov ecx, dword [esp + 8]
mov dword [esp + 0x14], edx
mov edx, dword [esp + 4]
push dword [ebp + 0xc]
push 0
push str.non_deterministic_functions
call fcn.10170730
mov edx, dword [esp + 0x20]
add esp, 0xc
jmp 0x1014e0ad
cmp dword [ebx + 0x14], 1
mov esi, dword [esp + 0x2c]
je 0x1014f0cd
mov edi, dword [esp + 4]
mov ecx, dword [esp + 0x1c]
jmp 0x1014d88f
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 4]
xor eax, eax
cmp dword [esp + 0xc], 0
je 0x1014d8f3
mov eax, dword [esp + 0x18]
test eax, eax
mov dword [esp + 0x2c], esi
je 0x1014e288
mov cl, byte [eax]
test cl, cl
je 0x1014e288
xor eax, eax
mov edx, dword [esp + 0x6c]
mov esi, dword [esp + 0xc]
jmp 0x1014d943
mov edi, esi
mov edx, dword [esp + 8]
mov al, byte [edx + 0x9c]
cmp byte [edx + 0x9d], 0
jne 0x1014e520
cmp dword [esp + 0x20], 0
mov esi, 1
je 0x1014e03b
cmp al, 0x80
je 0x1014e03b
xor ecx, ecx
movzx edx, byte [ecx + 0x101c87db]
mov ebx, dword [esp + 0x20]
movzx ebx, byte [ebx + ecx]
cmp dl, bl
je 0x1014deea
mov dl, byte [edx + 0x101af7e8]
cmp dl, byte [ebx + 0x101af7e8]
jne 0x1014e03b
inc ecx
jmp 0x1014dec2
test edx, edx
jne 0x1014dee7
mov ecx, esi
mov ebx, dword [esp + 0x14]
jmp 0x1014e084
mov ecx, dword [esp + 0xc]
movsx eax, word [ecx + 0x20]
mov edx, esi
mov esi, ecx
cmp edx, eax
mov eax, 0xffffffff
cmove edx, eax
mov eax, dword [esp + 0x28]
cmp edx, eax
mov edi, dword [esp + 4]
mov ebx, dword [esp + 0x14]
jge 0x1014ec11
cmp edx, eax
jge 0x1014f19c
mov eax, dword [esp + 0x48]
mov eax, dword [eax]
cmp eax, 2
je 0x1014e489
mov ecx, dword [esp + 0x44]
mov dword [ecx], esi
mov ecx, dword [esp + 8]
cmp byte [ecx + 0x9d], 0
jne 0x1014e547
mov ecx, dword [ebp + 0xc]
mov word [ecx + 0x20], dx
test edx, edx
js 0x1014e379
mov ecx, edx
xor esi, esi
inc esi
mov edx, esi
shl edx, cl
xor ebx, ebx
dec ebx
cmp ecx, 0x20
cmovb ebx, edx
test eax, eax
mov dword [esp + 0xc], esi
jne 0x1014e19b
mov eax, dword [esp + 8]
or dword [eax + 0x90], ebx
mov byte [esp + 0x18], 0x4d
xor ecx, ecx
jmp 0x1014d9b0
mov cl, byte [ecx + 0x101af7e8]
cmp cl, byte [edx + 0x101af7e8]
jne 0x1014d760
jmp 0x1014d793
xor ecx, ecx
mov eax, edi
mov edx, dword [eax + 0x10]
mov dword [esp + ecx*4 + 0x90], edx
mov eax, dword [eax + 0xc]
test eax, eax
je 0x1014dfca
lea edx, [ecx + 1]
cmp ecx, 7
mov ecx, edx
jb 0x1014dfaf
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 0xc]
test edx, edx
je 0x1014dfdb
mov ecx, esi
call fcn.1014d480
mov eax, dword [ebp + 0xc]
lea esi, [eax + 0xc]
mov eax, esi
mov eax, dword [eax]
movzx ecx, byte [eax]
cmp ecx, 0xb0
je 0x1014e510
lea edx, [ecx - 0xad]
cmp edx, 1
jbe 0x1014e518
cmp cl, 0xa7
je 0x1014e1c6
movzx eax, cl
cmp eax, 0x75
je 0x1014e1f8
add eax, 0xffffff67
cmp eax, 3
jb 0x1014e1f8
xor ebx, ebx
inc ebx
jmp 0x1014ea58
xor ecx, ecx
mov edi, ebx
mov edx, dword [esp + 0xc]
jmp 0x1014d8d9
cmp dword [esp + 0x20], 0
je 0x1014f2ba
cmp al, 0x7f
mov esi, edi
mov ebx, dword [esp + 0x14]
je 0x1014dc24
xor eax, eax
movzx edx, byte [eax + 0x101ceb5a]
mov ecx, dword [esp + 0x20]
movzx ecx, byte [ecx + eax]
cmp dl, cl
je 0x1014e07e
mov dl, byte [edx + 0x101af7e8]
cmp dl, byte [ecx + 0x101af7e8]
jne 0x1014e4cd
inc eax
jmp 0x1014e056
xor ecx, ecx
test edx, edx
jne 0x1014e07b
mov eax, dword [esp + 0x48]
mov dword [eax], ecx
mov eax, dword [esp + 0x54]
mov eax, dword [eax]
mov dword [esp + 0xc], eax
mov esi, edi
jmp 0x1014dc24
and al, 0x2e
mov ecx, dword [ebp + 0xc]
mov byte [ecx + 2], al
test byte [ebx + 2], 4
jne 0x1014f322
mov eax, dword [edx + 4]
bt eax, 0x12
jb 0x1014efc3
mov byte [esp + 0x10], 1
test eax, 0x280000
je 0x1014e0e0
mov ecx, dword [esp + 8]
cmp byte [ecx + 0xd8], 1
ja 0x1014e0e0
mov ecx, dword [ebp + 0xc]
test byte [ecx + 7], 0x40
jne 0x1014e265
mov al, 1
mov ecx, edi
movzx ecx, cl
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 8]
lea edi, [ecx + 0xd8]
mov dword [esp + 0x44], edi
cmp byte [ecx + 0xd8], 2
jae 0x1014f904
test edx, edx
mov ebx, dword [esp + 0x18]
je 0x1014e11f
cmp dword [edx + 0x18], 0
jne 0x1014e11f
cmp dword [esp + 0x24], 0
jne 0x1014f263
cmp dword [esp + 0x28], 0
jne 0x1014e415
test al, al
je 0x1014f02c
cmp byte [esp + 0x10], 0
je 0x1014f069
mov dword [esp + 0x10], 0
mov eax, dword [ebp + 0xc]
test byte [eax + 7], 1
jne 0x1014f0a9
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0xc]
test eax, eax
je 0x1014ecd2
mov ebx, dword [eax]
test ebx, ebx
jle 0x1014ecd2
add eax, 8
mov edi, eax
mov edx, dword [eax]
test edx, edx
je 0x1014ecc7
mov ecx, esi
call fcn.1014d480
test eax, eax
jne 0x1014ecd2
mov eax, edi
cmp ebx, 1
jle 0x1014ecd2
dec ebx
add eax, 0x14
jmp 0x1014e16f
mov eax, dword [esp + 8]
or dword [eax + 0x94], ebx
jmp 0x1014df88
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x2c]
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x30]
jmp 0x1014d7dc
xor edx, edx
jmp 0x1014d8d9
test byte [eax + 6], 0x20
jne 0x1014e026
mov ecx, dword [eax + 0x2c]
test ecx, ecx
je 0x1014e026
movsx eax, word [eax + 0x20]
test eax, eax
js 0x1014e1f8
mov ecx, dword [ecx + 4]
test ecx, ecx
je 0x1014e1f8
shl eax, 4
test byte [ecx + eax + 4], 0xf
je 0x1014e026
mov eax, dword [esp + 8]
cmp byte [eax + 0xd8], 1
ja 0x1014e026
xor eax, eax
mov ecx, dword [ebp + 0xc]
cmp byte [ecx], 0x33
sete al
mov dword [ecx + 8], eax
or byte [ecx + 5], 8
mov byte [ecx], 0x9b
xor eax, eax
mov ecx, dword [esp + eax*4 + 0x90]
mov dword [edi + 0x10], ecx
mov edi, dword [edi + 0xc]
test edi, edi
je 0x1014e23b
lea ecx, [eax + 1]
cmp eax, 7
mov eax, ecx
jb 0x1014e220
mov edx, dword [esi]
test edx, edx
je 0x1014e24c
mov eax, dword [esp + 8]
mov ecx, dword [eax]
call fcn.1014c9e0
mov dword [esi], 0
jmp 0x1014e026
mov ecx, dword [ebp + 0xc]
or byte [ecx + 6], 0x20
mov ecx, edi
jmp 0x1014d8d0
bt eax, 0x13
jb 0x1014f343
mov eax, dword [esp + 8]
mov eax, dword [eax]
test byte [eax + 0x20], 0x80
je 0x1014f343
mov ecx, edi
mov al, 1
jmp 0x1014e0e4
xor eax, eax
mov esi, dword [esp + 0xc]
mov ecx, dword [esi + 4]
mov dword [esp + 0x24], ecx
mov ecx, dword [esi + 0x3c]
mov dword [esp + 0x40], ecx
movsx ecx, word [esi + 0x22]
mov dword [esp + 0x28], ecx
test ecx, ecx
mov edx, 0
jle 0x1014df0f
xor esi, esi
mov ecx, dword [esp + 0x24]
jmp 0x1014d958
mov eax, dword [ebx + 0x18]
mov dword [esp + 0x10], eax
mov edx, dword [esp + 0x20]
mov dword [esp + 4], edi
test edx, edx
mov dword [esp + 0x1c], ecx
jne 0x1014e38c
mov ecx, dword [esp + 0x10]
and ecx, 0x80
mov ecx, dword [esp + 0x1c]
je 0x1014e38c
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 8]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x28], eax
mov eax, dword [eax]
mov dword [esp + 0x24], eax
test eax, eax
jle 0x1014e38c
xor ebx, ebx
mov dword [esp + 0x2c], esi
lea eax, [ebx + ebx*4]
mov edx, dword [esp + 0x28]
test byte [edx + eax*4 + 0x14], 3
je 0x1014e325
inc ebx
cmp ebx, dword [esp + 0x24]
jne 0x1014e30e
jmp 0x1014e38c
mov edx, dword [esp + 0x28]
mov edx, dword [edx + eax*4 + 0xc]
mov dword [esp + 0xc], edx
test edx, edx
je 0x1014f3f7
cmp dword [esp + 0x18], 0
je 0x1014e31c
xor edi, edi
mov ecx, dword [esp + 0xc]
movzx edx, byte [ecx + edi]
mov ecx, dword [esp + 0x18]
movzx ecx, byte [ecx + edi]
cmp dl, cl
jne 0x1014e361
test edx, edx
je 0x1014f402
inc edi
jmp 0x1014e342
mov dl, byte [edx + 0x101af7e8]
cmp dl, byte [ecx + 0x101af7e8]
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x2c]
jne 0x1014e31c
jmp 0x1014e35e
mov eax, dword [ebp + 0xc]
mov byte [eax + 1], 0x44
xor eax, eax
inc eax
mov dword [esp + 0xc], eax
jmp 0x1014df88
mov edx, dword [esp + 0x14]
mov edx, dword [edx + 0xc]
inc dword [esp + 0x68]
test edx, edx
mov edi, dword [esp + 4]
jne 0x1014d6b7
mov edx, edi
mov edi, str.no_such_column
cmp dword [esp + 0x20], 0
jne 0x1014f769
mov eax, dword [ebp + 0xc]
mov ebx, dword [eax + 4]
test bl, bl
jns 0x1014f4d2
mov eax, dword [esp + 0x34]
cmp byte [eax + 0xb1], 0
jne 0x1014e3ef
test byte [edx + 0x1a], 1
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x20]
mov ecx, 0x1e
jne 0x1014f786
bt eax, ecx
jae 0x1014f4d2
push dword [esp + 0x18]
push str.double_quoted_string_literal:___w_
push 0x1c
call sym.nss3.dll_sqlite3_log
add esp, 0xc
mov ecx, dword [ebp + 0xc]
mov byte [ecx], 0x75
xor eax, eax
mov dword [ecx + 0x30], eax
mov dword [ecx + 0x2c], eax
jmp 0x1014e026
mov dword [esp + 0x14], edx
mov edx, dword [ebx]
mov ecx, dword [esp + 0x14]
mov ecx, dword [ecx + 4]
test dl, 1
mov edi, dword [esp + 0x24]
je 0x1014f503
bt ecx, 0x10
jae 0x1014e43d
test edi, edi
je 0x1014f503
test edi, edi
jne 0x1014f4f9
test al, al
je 0x1014f545
cmp byte [esp + 0x10], 0
mov edx, dword [esp + 0x14]
je 0x1014f553
xor eax, eax
cmp dword [esp + 0x24], 0
sete al
xor eax, 0xffffbfff
mov ecx, dword [esp + 0x18]
and dword [ecx], eax
xor eax, eax
inc eax
mov dword [esp + 0x10], eax
jmp 0x1014e152
mov eax, dword [ebp + 0xc]
or byte [eax + 4], 0x40
jmp 0x1014dbd9
mov eax, dword [esp + 8]
cmp byte [eax + 0xd8], 2
jae 0x1014f74e
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x24]
test dx, dx
js 0x1014e4b1
mov ecx, dword [esi + 0x1c]
and ecx, 0x20
jne 0x1014f83d
movsx ecx, dx
add eax, ecx
mov ecx, dword [esp + 0x48]
mov dword [ecx], eax
xor eax, eax
inc eax
mov dword [esp + 0xc], eax
mov byte [esp + 0x18], 0xb0
jmp 0x1014df8d
mov dword [esp + 0xc], 0
jmp 0x1014e094
xor ecx, ecx
mov edx, dword [esp + 0x18]
movzx edx, byte [edx + ecx]
movzx ebx, byte [ecx + 0x101d52cd]
cmp dl, bl
je 0x1014f7ca
mov dl, byte [edx + 0x101af7e8]
cmp dl, byte [ebx + 0x101af7e8]
je 0x1014f7ce
mov edx, dword [esp + 0x20]
mov ecx, eax
jmp 0x1014e2c7
mov cl, byte [eax + 2]
jmp 0x1014e003
add eax, 0xc
jmp 0x1014dfe3
mov ebx, dword [esp + 0x14]
test byte [ebx + 0x19], 4
mov esi, edi
je 0x1014dc24
cmp dword [esp + 0x20], 0
jne 0x1014f8bb
xor ecx, ecx
cmp al, 0x80
setne cl
jmp 0x1014def0
mov ecx, esi
mov esi, ebx
mov ebx, dword [ebp + 0xc]
mov byte [ebx + 2], 0xa7
mov word [ebx + 0x20], dx
movsx edi, word [ecx + 0x22]
inc edi
imul edi, eax
mov esi, dword [esi + 8]
movsx edx, dx
call fcn.10157970
cwde
add eax, esi
add eax, edi
inc eax
mov edi, dword [esp + 4]
mov dword [ebx + 0x1c], eax
jmp 0x1014e4bc
mov eax, dword [edi + 4]
mov edx, dword [ebp + 0xc]
mov byte [edx], 0xa7
mov ecx, dword [eax + 0x18]
mov dword [edx + 0x2c], ecx
mov eax, dword [eax + 0x34]
mov dword [edx + 0x1c], eax
dec word [edx + 0x20]
mov byte [edx + 1], 0x44
jmp case.0x1014d63a.46
mov dword [esp + 0x2c], esi
mov dword [esp + 0x1c], ecx
mov eax, dword [edx + 0x14]
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x10], eax
mov eax, dword [eax]
mov dword [esp + 0x28], eax
test eax, eax
jle 0x1014eac1
xor edi, edi
mov dword [esp + 0x4c], 0
lea ecx, [edi + edi*4]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x50], ecx
lea ecx, [eax + ecx*4]
add ecx, 8
mov edx, dword [esp + 0x18]
push dword [esp + 0x38]
push dword [esp + 0x24]
call fcn.10170a80
add esp, 8
test eax, eax
je 0x1014e669
cmp dword [esp + 0xc], 0
jle 0x1014e620
mov eax, dword [esp + 0x30]
test byte [eax + 0x29], 4
jne 0x1014e67d
mov edx, dword [esp + 0x90]
test edx, edx
je 0x1014e615
mov ecx, dword [esp + 0x34]
call fcn.10017250
mov dword [esp + 0x90], 0
mov eax, dword [ebp + 0xc]
mov word [eax + 0x20], di
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x50]
mov eax, dword [edx + esi*4 + 0x14]
mov ecx, eax
or ecx, 0x40
mov dword [edx + esi*4 + 0x14], ecx
inc dword [esp + 0xc]
test al, al
js 0x1014f184
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov dword [esp + 0x28], eax
xor eax, eax
inc eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x2c], 2
mov eax, dword [esp + 0x30]
mov dword [esp + 0x1c], eax
mov eax, edi
inc eax
mov edi, eax
cmp eax, dword [esp + 0x28]
jl 0x1014e5c7
jmp 0x1014eac9
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 0x30]
mov dword [esp + 0x5c], eax
mov eax, dword [eax]
mov dword [esp + 0x74], eax
test eax, eax
jle 0x1014e601
xor edx, edx
mov eax, dword [esp + 0x5c]
mov esi, dword [eax + edx*8 + 8]
xor ebx, ebx
movzx ecx, byte [esi + ebx]
mov eax, dword [esp + 0x18]
movzx eax, byte [eax + ebx]
cmp cl, al
jne 0x1014e6b8
test ecx, ecx
jne 0x1014e6c6
jmp 0x1014e6d5
mov cl, byte [ecx + 0x101af7e8]
cmp cl, byte [eax + 0x101af7e8]
jne 0x1014e6c9
inc ebx
jmp 0x1014e6a2
inc edx
cmp edx, dword [esp + 0x74]
jne 0x1014e698
jmp 0x1014e601
mov eax, dword [esp + 0x30]
movzx eax, byte [eax + 0x24]
test al, 0x10
je 0x1014e669
test al, 8
jne 0x1014f39a
mov edx, dword [esp + 0x90]
test edx, edx
je 0x1014e6fd
mov ecx, dword [esp + 0x34]
call fcn.10017250
mov dword [esp + 0x90], 0
mov dword [esp + 0xc], 0
jmp 0x1014e620
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax]
cmp ecx, 0xa7
je 0x1014e72c
cmp ecx, 0x4d
jne 0x1014da31
cmp dword [esp + 0x40], 0
je 0x1014da31
mov dword [esp + 4], edi
mov ebx, esi
mov eax, dword [esi + 4]
mov edx, dword [edx + 0x10]
add edx, 0xc
mov edi, dword [esp + 0x40]
inc dword [esp + 0x64]
lea esi, [edx + 0x10]
cmp dword [edx], edi
mov edx, esi
jne 0x1014e74a
cmp cl, 0x4d
jne 0x1014eb96
mov eax, dword [esp + 0x54]
mov eax, dword [eax]
test eax, eax
mov edi, dword [esp + 4]
mov esi, ebx
je 0x1014da31
mov ecx, dword [ebp + 0xc]
movzx ecx, word [ecx + 0x20]
test cx, cx
jns 0x1014e78e
movzx ecx, word [eax + 0x20]
mov esi, str.ROWID
test cx, cx
js 0x1014e79a
movzx ecx, cx
mov edx, dword [eax + 4]
shl ecx, 4
mov esi, dword [edx + ecx]
mov edx, dword [eax]
mov ecx, dword [esp + 8]
push dword [esp + 0x64]
push esi
call fcn.10170ea0
add esp, 8
cmp eax, 2
mov edi, dword [esp + 4]
mov esi, ebx
jne 0x1014da31
mov eax, dword [ebp + 0xc]
mov byte [eax], 0x79
jmp 0x1014da31
mov dword [esp + 0xc], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 4], edi
mov edi, str.ambiguous_column_name
mov edx, dword [esp + 0x90]
test edx, edx
je 0x1014e7f9
mov eax, dword [esp + 0xc]
dec eax
cmp dword [edx], eax
je 0x1014f138
mov ecx, dword [esp + 0x34]
call fcn.10017250
cmp dword [esp + 0x38], 0
je 0x1014eafc
push dword [esp + 0x18]
push dword [esp + 0x24]
push dword [esp + 0x40]
push edi
push str._s:__s._s._s
push dword [esp + 0x1c]
call fcn.100463a0
add esp, 0x18
cmp dword [ebp + 0xc], 0
je 0x1014e849
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [ebp + 0xc]
test byte [ecx + 4], 3
jne 0x1014e842
mov edx, dword [ecx + 0x24]
test edx, edx
jg 0x1014ebe7
mov ecx, dword [ecx + 0xc]
test ecx, ecx
jne 0x1014e831
mov eax, dword [esp + 8]
mov byte [eax + 0x11], 1
mov edi, dword [esp + 4]
inc dword [edi + 0x14]
mov byte [esp + 0x18], 0xa7
mov ecx, dword [esp + 0x1c]
jmp 0x1014d9b0
mov ecx, dword [esp + 0x30]
test byte [ecx + 0x29], 4
je 0x1014e8de
mov ecx, dword [esp + 0x30]
mov ecx, dword [ecx + 0x30]
mov dword [esp + 0x4c], ecx
mov ecx, dword [ecx]
mov dword [esp + 0x5c], ecx
test ecx, ecx
jle 0x1014e8de
mov dword [esp + 0x50], 0
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x50]
mov ecx, dword [ecx + edx*8 + 8]
mov dword [esp + 0x10], ecx
xor ebx, ebx
mov ecx, dword [esp + 0x10]
movzx ecx, byte [ecx + ebx]
mov edx, dword [esp + 0x18]
movzx edx, byte [edx + ebx]
cmp cl, dl
jne 0x1014e8bc
test ecx, ecx
jne 0x1014e8ca
jmp 0x1014e95c
mov cl, byte [ecx + 0x101af7e8]
cmp cl, byte [edx + 0x101af7e8]
jne 0x1014e8cd
inc ebx
jmp 0x1014e89f
mov edx, dword [esp + 0x50]
inc edx
mov ecx, edx
mov dword [esp + 0x50], edx
cmp edx, dword [esp + 0x5c]
jne 0x1014e88d
mov edx, dword [esp + 0x90]
test edx, edx
je 0x1014e8f2
mov ecx, dword [esp + 0x34]
call fcn.10017250
mov dword [esp + 0x90], 0
jmp 0x1014d7a1
mov eax, dword [edx + 0x14]
mov eax, dword [eax + 0x1c]
lea ecx, [edi + edi*4]
or dword [eax + ecx*4 + 0x14], 0x40
jmp 0x1014d7d2
mov edx, dword [ecx + 4]
mov esi, eax
shl esi, 4
test byte [edx + esi + 0xe], 0x60
je 0x1014d9de
movzx ecx, word [ecx + 0x22]
xor edx, edx
dec edx
mov dword [esp + 4], ebx
mov esi, edx
shl esi, cl
xor eax, eax
test cl, 0x20
cmovne edx, esi
cmove eax, esi
mov ebx, dword [esp + 4]
xor esi, esi
dec esi
xor eax, esi
xor edx, esi
cmp cx, 0x40
cmovge edx, esi
cmovge eax, esi
jmp 0x1014d9fe
mov ecx, dword [esp + 0x30]
mov cl, byte [ecx + 0x24]
test cl, 0x10
je 0x1014d760
test cl, 8
jne 0x1014ee17
mov edx, dword [esp + 0x90]
test edx, edx
je 0x1014e989
mov ecx, dword [esp + 0x34]
call fcn.10017250
mov dword [esp + 0x90], 0
mov dword [esp + 0xc], 0
jmp 0x1014d7a1
movzx eax, byte [edi]
cmp eax, 0xaa
je 0x1014e9b0
cmp eax, 0x3b
jne case.0x1014d63a.48
push edi
push esi
call fcn.1014d5f0
add esp, 8
mov ebx, 2
cmp eax, 2
je 0x1014ea58
cmp byte [edi], 0xaa
jne case.0x1014d63a.48
mov ecx, dword [ebp + 0xc]
mov al, byte [ecx]
mov byte [ecx + 2], al
mov byte [ecx], 0xaf
xor ebx, ebx
jmp 0x1014ea58
mov eax, dword [esp + 8]
mov eax, dword [eax]
cmp byte [eax + 0x57], 0
jne case.0x1014d63a.46
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0xc]
mov cl, byte [eax]
cmp cl, 0xb0
je 0x1014eaad
cmp cl, 0x8a
je 0x1014eb22
movzx ecx, cl
cmp ecx, 0xb1
je 0x1014eb2a
xor eax, eax
inc eax
mov ecx, dword [ebp + 0xc]
cmp byte [ecx], 0x30
je 0x1014ea75
mov ecx, dword [ecx + 0x10]
mov dl, byte [ecx]
cmp dl, 0xb0
je 0x1014ea70
cmp dl, 0x8a
je 0x1014eab5
movzx edx, dl
cmp edx, 0xb1
je 0x1014eb77
xor edx, edx
inc edx
cmp eax, edx
jne 0x1014eb36
xor ebx, ebx
mov eax, dword [esp + 8]
cmp dword [eax + 0x24], 0
setne bl
add ebx, ebx
mov ecx, dword [esp + 0xb8]
xor ecx, ebp
call fcn.10156ff0
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dl, byte [ecx + 2]
jmp 0x1014ea26
mov ecx, dword [ecx + 0x14]
mov edx, dword [ecx + 8]
mov bl, byte [edx]
cmp bl, 0xb0
je 0x1014f3be
cmp bl, 0x8a
je 0x1014f3c6
movzx esi, bl
cmp esi, 0xb1
je 0x1014f3ce
xor edx, edx
inc edx
cmp edx, eax
jne 0x1014ea41
mov ecx, dword [ecx + 0x1c]
jmp 0x1014ea1f
mov cl, byte [eax + 2]
jmp 0x1014e9f9
mov ecx, dword [ecx + 0x14]
add ecx, 0x1c
mov ecx, dword [ecx]
mov edx, dword [ecx]
jmp 0x1014ea41
mov dword [esp + 0x4c], 0
cmp dword [esp + 0x20], 0
je 0x1014ebfc
cmp dword [esp + 0x4c], 0
mov edi, dword [esp + 4]
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x2c]
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x24]
je 0x1014d840
jmp 0x1014d7e7
cmp byte [esp + 0x60], 0
je 0x1014ebc8
push dword [esp + 0x18]
push edi
push 0x101cab1a
push dword [esp + 0x14]
call fcn.100463a0
add esp, 0x10
jmp 0x1014e822
mov eax, dword [eax + 0x14]
add eax, 0x1c
jmp 0x1014eb2d
add eax, 0x14
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x1014ea14
push str.row_value_misused
mov esi, dword [esp + 0xc]
push esi
call fcn.100463a0
add esp, 8
mov eax, dword [esi]
mov ecx, dword [esp + 0x58]
test byte [ecx + 4], 3
jne 0x1014eb63
mov ecx, dword [esp + 0x58]
mov ecx, dword [ecx + 0x24]
test ecx, ecx
jg 0x1014ec4a
mov ecx, dword [esp + 0x58]
mov ecx, dword [ecx + 0xc]
mov dword [esp + 0x58], ecx
test ecx, ecx
jne 0x1014eb4a
jmp case.0x1014d63a.46
add ecx, 0x14
jmp 0x1014eabb
mov bl, byte [ebx + 0x101af7e8]
cmp bl, byte [edx + 0x101af7e8]
je 0x1014d998
jmp 0x1014d95d
mov ecx, dword [eax]
test ecx, ecx
mov edi, dword [esp + 4]
mov esi, ebx
jle 0x1014da31
mov edx, dword [esp + 0x48]
mov edx, dword [edx]
add eax, 0x34
mov edi, dword [esp + 4]
cmp edx, dword [eax]
je 0x1014ee0b
add eax, 0x48
dec ecx
mov esi, ebx
jne 0x1014ebb3
jmp 0x1014da31
push dword [esp + 0x18]
push dword [esp + 0x24]
push edi
push str._s:__s._s
push dword [esp + 0x18]
call fcn.100463a0
add esp, 0x14
jmp 0x1014e822
mov dword [eax + 0x44], edx
jmp 0x1014e849
mov eax, dword [esp + 0x40]
cmp dword [ebx + 0x3c], eax
je 0x1014ee3b
mov edi, dword [esp + 4]
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x2c]
jmp 0x1014d88f
mov edx, dword [esp + 0x28]
mov esi, edx
mov ecx, dword [esp + 0x18]
call fcn.10161510
test eax, eax
je 0x1014ee80
mov edi, dword [esp + 0xc]
mov al, byte [edi + 0x1d]
and al, 2
xor ecx, ecx
cmp al, 1
sbb ecx, ecx
mov edx, esi
mov esi, edi
or edx, ecx
mov edi, dword [esp + 4]
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x28]
jmp 0x1014df23
mov dword [eax + 0x44], ecx
jmp case.0x1014d63a.46
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
push edi
push 0
push str.the__.__operator
call fcn.10170730
add esp, 0xc
jmp 0x1014dace
mov ecx, dword [esi + 8]
mov dword [esp + 0x38], ecx
mov esi, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
jmp 0x1014dae2
mov ecx, dword [edx + 0x114]
test ecx, ecx
je 0x1014db01
mov edx, ecx
cmp dword [edx], eax
je 0x1014f222
mov edx, dword [edx + 0xc]
test edx, edx
jne 0x1014ec91
jmp 0x1014f231
test byte [edi + 0x18], 6
je 0x1014f1ac
mov dword [esp + 0x38], 0
mov eax, dword [esp + 8]
mov ecx, dword [ebp + 0xc]
mov edi, dword [esp + 4]
jmp 0x1014db45
cmp ebx, 2
mov eax, edi
jge 0x1014e195
xor ebx, ebx
inc ebx
cmp dword [esp + 0x10], 0
je 0x1014ea58
cmp dword [esp + 0x24], 0
jne 0x1014f55f
mov eax, dword [ebp + 0xc]
mov byte [eax], 0xa8
mov byte [eax + 2], 0
test byte [eax + 7], 1
mov edi, dword [esp + 4]
jne 0x1014f65e
lea ecx, [esp + 0x80]
xorps xmm0, xmm0
xor edx, edx
lea esi, [esp + 0x78]
mov dword [esp + 4], edi
mov eax, dword [edi + 4]
movaps xmmword [esp + 0x90], xmm0
mov dword [esp + 0xa4], edx
mov dword [esp + 0xa0], edx
movups xmmword [ecx], xmm0
mov dword [esp + 0x94], 0x10075520
mov dword [esp + 0x98], 0x10170fe0
mov dword [esp + 0x9c], 0x101710b0
mov dword [esp + 0xa8], esi
mov ecx, dword [esp + 8]
mov ecx, dword [ecx]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
mov eax, dword [ebp + 0xc]
mov edi, dword [eax + 0x14]
test edi, edi
je 0x1014eda4
mov esi, dword [edi]
test esi, esi
jle 0x1014eda4
add edi, 8
mov edx, dword [edi]
test edx, edx
je 0x1014f6ad
lea ecx, [esp + 0x90]
call fcn.1014d480
test eax, eax
xorps xmm0, xmm0
jne 0x1014eda4
cmp esi, 1
jle 0x1014eda4
dec esi
add edi, 0x14
jmp 0x1014ed7c
mov eax, dword [ebp + 0xc]
test byte [eax + 7], 1
jne 0x1014f678
mov edx, dword [esp + 0x88]
test edx, edx
mov edi, dword [esp + 4]
jne 0x1014f69a
movzx eax, word [esp + 0xa4]
test ax, ax
je 0x1014eddd
and eax, 1
test ax, ax
je 0x1014f7a4
mov ecx, dword [esp + 0x14]
test ecx, ecx
je 0x1014edfc
mov eax, 0x8001000
and eax, dword [ecx + 4]
xor eax, 0x8000010
mov ecx, dword [edi + 0x18]
add edi, 0x18
or ecx, eax
mov dword [edi], ecx
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
or dword [ecx], eax
jmp 0x1014ea58
add eax, 0xffffffe4
mov dword [esp + 0x54], eax
jmp 0x1014e760
mov eax, dword [ebp + 0xc]
movsx eax, word [eax + 0x20]
lea edx, [esp + 0x90]
mov ecx, dword [esp + 8]
push eax
push dword [esp + 0x20]
call fcn.10170be0
add esp, 8
jmp 0x1014d7a1
cmp dword [esp + 0x40], 0
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x24]
jne 0x1014d853
push 0x101ddf2c
push dword [esp + 0x3c]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
mov edx, dword [esp + 0x38]
mov esi, dword [esp + 0x34]
mov ecx, dword [esp + 0x24]
add esp, 8
test eax, eax
mov eax, dword [esp + 0x3c]
je 0x1014d853
mov edi, dword [esp + 4]
jmp 0x1014d7e7
mov edi, dword [esp + 4]
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0xc]
mov edx, esi
mov esi, eax
jmp 0x1014ec41
xor esi, esi
inc esi
mov ecx, eax
jmp 0x1014e2c3
test edx, edx
je 0x1014f7d4
inc ecx
jmp 0x1014dd09
mov edx, dword [ebp + 0xc]
mov edx, dword [edx + 0x2c]
xor edi, edi
cmp byte [edx + 0x10], 0xa6
cmovne edi, edx
mov dword [esp + 0x24], edi
jmp 0x1014dd81
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov edx, ebx
push 0
push edi
push 0xfffffffffffffffe
call fcn.10151720
add esp, 0xc
mov edx, eax
test eax, eax
sete byte [esp + 0x10]
setne al
xor ecx, ecx
jmp 0x1014e0e4
mov ebx, edx
mov eax, dword [ebp + 0xc]
or byte [eax + 6], 8
cmp dword [esp + 0x10], 2
je 0x1014f494
mov edx, ebx
mov eax, dword [ebx + 0x20]
cmp byte [eax], 0x75
mov eax, 0x800000
mov ecx, 0x7800000
cmove ecx, eax
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x1c], ecx
jmp 0x1014ddcf
cmp byte [eax + 0xb1], 0
jne 0x1014dde3
mov dword [esp + 0x14], edx
mov edx, dword [esp + 8]
cmp byte [edx + 0xd8], 0
mov edx, dword [esp + 0x14]
jne 0x1014dde3
mov edx, dword [edx + 0x20]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 8]
mov edx, dword [edx + 0x100]
mov dword [esp + 0x44], edx
mov ebx, dword [eax + 0x168]
call dword [section..00cfg]
xor eax, eax
push dword [esp + 0x44]
push eax
push dword [esp + 0x18]
push eax
push 0x1f
push ebx
call ecx
add esp, 0x18
cmp eax, 1
jne 0x1014f47c
mov esi, 0x17
mov eax, str.not_authorized
push eax
mov edi, dword [esp + 0xc]
push edi
call fcn.100463a0
add esp, 8
mov dword [edi + 0xc], esi
push dword [ebp + 0xc]
push str.not_authorized_to_use_function:__T
push edi
call fcn.100463a0
add esp, 0xc
mov eax, dword [esp + 4]
inc dword [eax + 0x14]
mov eax, dword [ebp + 0xc]
mov byte [eax], 0x79
jmp 0x1014e026
mov ecx, dword [esp + 8]
cmp byte [ecx + 0x12], 0
jne 0x1014e0ba
mov ecx, dword [esp + 8]
mov ecx, dword [ecx]
test byte [ecx + 0x18], 0x20
jne 0x1014e0ba
cmp dword [esp + 0x28], 0
setne al
mov edx, dword [esp + 8]
lea edi, [edx + 0xd8]
mov dword [esp + 0x44], edi
cmp byte [edx + 0xd8], 1
ja 0x1014f8fa
cmp dword [esp + 0x28], 0
jne 0x1014f86b
xor edx, edx
mov eax, str.no_such_function:__T
cmp byte [ecx + 0xb1], 0
mov dword [esp + 0x28], 0
je 0x1014f076
jmp 0x1014e13d
mov dword [esp + 0x14], edx
mov dword [esp + 0x28], 0
xor eax, eax
mov ecx, dword [esp + 8]
mov ecx, dword [ecx]
cmp byte [ecx + 0xb1], 0
je 0x1014f314
cmp byte [esp + 0x10], 0
je 0x1014f91c
test al, al
mov edx, dword [esp + 0x14]
jne 0x1014e45c
jmp 0x1014e13d
mov dword [esp + 0x28], 0
mov eax, str.wrong_number_of_arguments_to_function__T__
push dword [ebp + 0xc]
push eax
push dword [esp + 0x10]
mov edi, edx
call fcn.100463a0
mov edx, edi
add esp, 0xc
mov eax, dword [esp + 4]
inc dword [eax + 0x14]
mov dword [esp + 0x10], 0
cmp dword [esp + 0x28], 0
je 0x1014e152
jmp 0x1014e45c
push dword [ebp + 0xc]
push str.FILTER_may_not_be_used_with_non_aggregate__T__
push dword [esp + 0x10]
mov ebx, edx
call fcn.100463a0
mov edx, ebx
add esp, 0xc
mov eax, dword [esp + 4]
inc dword [eax + 0x14]
jmp 0x1014e152
mov ecx, dword [esp + 0x20]
mov edx, ebx
push dword [esp + 0x40]
call fcn.10170c60
add esp, 4
test eax, eax
je 0x1014ebfc
test edi, edi
mov esi, dword [esp + 0x2c]
jne 0x1014f0fc
mov edi, dword [esp + 4]
mov ecx, dword [esp + 0x1c]
jmp 0x1014d712
mov eax, dword [esp + 8]
cmp byte [eax + 0xd8], 2
mov edi, dword [esp + 4]
mov ecx, dword [esp + 0x1c]
jb 0x1014d712
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x114]
test eax, eax
je 0x1014f36c
mov ecx, dword [esp + 0x44]
cmp dword [eax], ecx
je 0x1014f366
mov eax, dword [eax + 0xc]
jmp 0x1014f11f
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 4]
bt eax, 0x17
jb 0x1014f2c5
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 0xc]
test edx, edx
je 0x1014f15b
mov ecx, dword [esp + 0x34]
call fcn.1014c9e0
mov eax, dword [ebp + 0xc]
mov dword [eax + 0xc], 0
mov edx, dword [eax + 0x10]
test edx, edx
je 0x1014f175
mov ecx, dword [esp + 0x34]
call fcn.1014c9e0
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x10], 0
jmp 0x1014f2d0
mov esi, 2
mov edx, dword [esp + 0x30]
mov ecx, edx
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x3c]
jmp 0x1014d7e7
mov esi, dword [esp + 0x2c]
inc esi
xor eax, eax
mov ecx, dword [esp + 0x1c]
jmp 0x1014d8f3
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x14]
mov dword [esp + 0x10], eax
test eax, eax
jle 0x1014f32e
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x10]
mov dword [esp + 0xc], eax
mov dword [esp + 0x18], 0
mov esi, dword [esp + 0x18]
shl esi, 4
mov eax, dword [esp + 0xc]
mov edi, dword [eax + esi]
xor ecx, ecx
movzx edx, byte [edi + ecx]
mov eax, dword [esp + 0x38]
movzx eax, byte [eax + ecx]
cmp dl, al
jne 0x1014f1f8
test edx, edx
jne 0x1014f206
jmp 0x1014f26d
mov dl, byte [edx + 0x101af7e8]
cmp dl, byte [eax + 0x101af7e8]
jne 0x1014f209
inc ecx
jmp 0x1014f1e2
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, dword [esp + 0x10]
jne 0x1014f1d2
mov dword [esp + 0x40], 0
jmp 0x1014f287
mov eax, dword [ebp + 0xc]
mov dword [edx], eax
mov eax, dword [esp + 8]
mov ecx, dword [eax + 0x114]
test ecx, ecx
mov edx, dword [esp + 8]
mov edi, dword [esp + 4]
je 0x1014db01
mov eax, dword [ebp + 0xc]
add eax, 0x2c
mov edx, dword [esp + 8]
mov edi, dword [esp + 4]
cmp dword [ecx], esi
je 0x1014f305
mov ecx, dword [ecx + 0xc]
test ecx, ecx
jne 0x1014f24f
jmp 0x1014db01
mov eax, str._T___may_not_be_used_as_a_window_function
jmp 0x1014f076
mov eax, dword [esp + 0xc]
mov eax, dword [eax + esi + 0xc]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x18]
cmp eax, dword [esp + 0x10]
jne 0x1014ecb7
xor eax, eax
movzx ecx, byte [eax + str.main]
mov edx, dword [esp + 0x38]
movzx edx, byte [edx + eax]
cmp cl, dl
jne 0x1014f2a5
test ecx, ecx
jne 0x1014f2b7
jmp 0x1014f381
mov cl, byte [ecx + 0x101af7e8]
cmp cl, byte [edx + 0x101af7e8]
jne 0x1014ecb7
inc eax
jmp 0x1014f289
mov esi, edi
mov ebx, dword [esp + 0x14]
jmp 0x1014dc24
and eax, 0xff7fffff
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 4], eax
mov edi, dword [ebp + 0xc]
movsx eax, word [edi + 0x20]
lea esi, [esp + 0x90]
mov ecx, dword [esp + 8]
mov edx, esi
push eax
push dword [esp + 0x20]
call fcn.10170be0
add esp, 8
mov byte [edi], 0xac
mov dword [edi + 8], str.coalesce
mov eax, dword [esi]
mov dword [edi + 0x14], eax
jmp 0x1014f46f
mov dword [ecx], eax
mov edx, dword [esp + 8]
mov edi, dword [esp + 4]
jmp 0x1014db01
mov eax, str.no_such_function:__T
mov edx, dword [esp + 0x14]
jmp 0x1014f076
mov eax, dword [ebp + 0xc]
or byte [eax + 7], 0x40
jmp 0x1014e0ad
mov dword [esp + 0x18], 0
mov dword [esp + 0x40], 0
jmp 0x1014f279
push dword [ebp + 0xc]
push str.unsafe_use_of__T__
push dword [esp + 0x10]
mov dword [esp + 0x20], edx
call fcn.100463a0
mov ecx, edi
mov edx, dword [esp + 0x20]
add esp, 0xc
jmp 0x1014e281
mov dword [eax], 0
mov edi, dword [esp + 4]
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x24]
jmp 0x1014d712
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x10]
mov ecx, dword [eax]
mov dword [esp + 0x38], ecx
mov eax, dword [eax + 0xc]
mov dword [esp + 0x40], eax
jmp 0x1014ecb7
mov eax, dword [ebp + 0xc]
movsx eax, word [eax + 0x20]
lea edx, [esp + 0x90]
mov ecx, dword [esp + 8]
push eax
push dword [esp + 0x20]
call fcn.10170be0
add esp, 8
jmp 0x1014e620
mov bl, byte [edx + 2]
jmp 0x1014ea86
mov edx, dword [edx + 0x14]
add edx, 0x1c
jmp 0x1014f3d1
add edx, 0x14
mov edx, dword [edx]
mov edx, dword [edx]
jmp 0x1014eaa1
mov ecx, dword [esp + 8]
mov edx, ebx
mov eax, dword [ebp + 0xc]
push eax
push eax
push str.subqueries
call fcn.10170730
add esp, 0xc
jmp 0x1014dbd0
cmp dword [esp + 0x18], 0
jne 0x1014e31c
mov ecx, dword [esp + 0x28]
mov edi, dword [ecx + eax*4 + 8]
mov edx, dword [edi + 4]
test byte [esp + 0x10], 1
jne 0x1014f41f
mov ecx, edx
and ecx, 0x10
jne 0x1014f818
test dx, dx
js 0x1014f6d7
mov al, byte [edi]
cmp al, 0xb0
je 0x1014f6fb
cmp al, 0x8a
je 0x1014f6cf
movzx eax, al
cmp eax, 0xb1
je 0x1014f703
mov edi, dword [esp + 8]
mov ecx, edi
mov edx, dword [esp + 0x28]
push dword [esp + 0x68]
push dword [ebp + 0xc]
push ebx
call fcn.1003a4e0
add esp, 0xc
cmp byte [edi + 0xd8], 2
jae 0x1014f72c
mov edi, dword [esp + 4]
mov esi, dword [esp + 0x14]
jmp 0x1014da1e
test eax, 0xfffffffd
je 0x1014f6be
xor esi, esi
inc esi
mov eax, str.authorizer_malfunction
jmp 0x1014ef8f
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 0x1c]
call fcn.101707b0
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x1c], eax
test eax, eax
mov edx, ebx
jns 0x1014ddcf
push dword [ebp + 0xc]
push str.second_argument_to__T___must_be_a_constant_between_0.0_and_1.0
push dword [esp + 0x10]
call fcn.100463a0
mov edx, ebx
add esp, 0xc
mov eax, dword [esp + 4]
inc dword [eax + 0x14]
jmp 0x1014ddcf
mov al, 1
mov dword [esp + 0x60], eax
mov dword [esp + 0x14], 0
test ebx, 0x4000800
je 0x1014f7f9
mov dword [esp + 0xc], 0
jmp 0x1014e7d8
bt edx, 0xe
jb 0x1014e445
and ecx, 0x10000
mov eax, str.window
mov edx, str.aggregate
or ecx, edi
cmovne edx, eax
push dword [ebp + 0xc]
push edx
push str.misuse_of__s_function__T__
push dword [esp + 0x14]
call fcn.100463a0
add esp, 0x10
mov eax, dword [esp + 4]
inc dword [eax + 0x14]
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x14]
jmp 0x1014e152
mov al, 1
xor ecx, ecx
inc ecx
mov dword [esp + 0x28], ecx
jmp 0x1014f03a
xor eax, eax
inc eax
mov dword [esp + 0x28], eax
jmp 0x1014f071
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x1c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x44]
cmp byte [eax], 1
ja 0x1014f5a5
xor edx, edx
cmp dword [esp + 0xc], 0
je 0x1014f583
mov eax, dword [esp + 0xc]
mov edx, dword [eax + 0x48]
mov edi, dword [esp + 8]
mov ecx, edi
push dword [esp + 0x14]
push dword [esp + 0x28]
call fcn.10170840
add esp, 8
mov eax, dword [edi]
cmp byte [eax + 0x57], 0
jne case.0x1014d63a.46
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 8]
mov dword [esp + 0x10], eax
test eax, eax
je 0x1014f5ea
mov eax, dword [esp + 0x10]
mov edi, dword [eax]
test edi, edi
jle 0x1014f5ea
add dword [esp + 0x10], 8
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
test edx, edx
je 0x1014f5e5
mov ecx, esi
call fcn.1014d480
test eax, eax
jne 0x1014f5ea
cmp edi, 1
jle 0x1014f5ea
dec edi
add dword [esp + 0x10], 0x14
jmp 0x1014f5c3
cmp edi, 2
jge 0x1014f5dd
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x10], eax
test eax, eax
je 0x1014f62f
mov eax, dword [esp + 0x10]
mov edi, dword [eax]
test edi, edi
jle 0x1014f62f
add dword [esp + 0x10], 8
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
test edx, edx
je 0x1014f62a
mov ecx, esi
call fcn.1014d480
test eax, eax
jne 0x1014f62f
cmp edi, 1
jle 0x1014f62f
dec edi
add dword [esp + 0x10], 0x14
jmp 0x1014f608
cmp edi, 2
jge 0x1014f622
mov eax, dword [esp + 0x24]
mov edx, dword [eax + 0x28]
test edx, edx
je 0x1014f641
mov ecx, esi
call fcn.1014d480
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x24]
call fcn.1016ff30
mov edi, dword [esp + 0x18]
mov eax, dword [edi]
mov ecx, 0x8000
jmp 0x1014edf8
mov eax, dword [eax + 0x2c]
mov edx, dword [eax + 0x28]
test edx, edx
je 0x1014ed03
mov ecx, esi
call fcn.1014d480
jmp 0x1014ed03
mov eax, dword [eax + 0x2c]
mov edx, dword [eax + 0x28]
test edx, edx
je 0x1014edb1
lea ecx, [esp + 0x90]
call fcn.1014d480
xorps xmm0, xmm0
jmp 0x1014edb1
mov eax, dword [esp + 8]
mov ecx, dword [eax]
call fcn.1014c8d0
xorps xmm0, xmm0
jmp 0x1014edc4
cmp esi, 2
xorps xmm0, xmm0
jge 0x1014ed9e
jmp 0x1014eda4
test eax, eax
mov edx, dword [esp + 0x14]
je 0x1014dde3
jmp 0x1014efb8
mov edi, dword [edi + 0x14]
add edi, 0x1c
jmp 0x1014f706
bt dword [esp + 0x10], 0xe
jae 0x1014f6ed
mov eax, dword [esp + 0x14]
cmp eax, dword [esp + 4]
je 0x1014f428
push dword [esp + 0xc]
push str.misuse_of_aliased_window_function__s
jmp 0x1014f821
mov al, byte [edi + 2]
jmp 0x1014f432
add edi, 0x14
mov eax, dword [edi]
cmp dword [eax], 1
je 0x1014f448
push str.row_value_misused
push dword [esp + 0xc]
call fcn.100463a0
add esp, 8
mov ebx, 2
jmp 0x1014ea58
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x114]
test eax, eax
je 0x1014f46f
mov ecx, dword [ebp + 0xc]
cmp dword [eax], ecx
je 0x1014f832
mov eax, dword [eax + 0xc]
jmp 0x1014f736
mov eax, dword [ebp + 0xc]
mov word [eax + 0x20], dx
mov dword [eax + 0x2c], esi
xor eax, eax
inc eax
mov dword [esp + 0xc], eax
mov byte [esp + 0x18], 0xa7
jmp 0x1014df8d
mov dword [esp + 0x14], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x60], 0
jmp 0x1014e7d8
mov edx, eax
and edx, 0x50000001
mov ecx, 0x1d
cmp edx, 0x40000001
jne 0x1014e3e6
jmp 0x1014e3ef
mov eax, dword [ebp + 0xc]
inc byte [eax + 2]
mov edi, dword [edi + 0xc]
test edi, edi
lea ecx, [esp + 0x80]
mov edx, 0
lea esi, [esp + 0x78]
jne 0x1014ed13
jmp 0x1014edfc
test edx, edx
je 0x1014f7d4
inc ecx
jmp 0x1014e4dc
mov ecx, dword [eax + 0x10]
test byte [ecx + 0x1d], 2
mov ecx, eax
mov edx, dword [esp + 0x20]
jne 0x1014e2c7
mov eax, dword [ebp + 0xc]
mov word [eax + 0x20], 0xffff
mov byte [eax + 1], 0x44
jmp 0x1014d9a4
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 8]
call fcn.10171200
test eax, eax
je 0x1014f883
mov ecx, dword [ebp + 0xc]
mov byte [ecx], 0xaa
or eax, ebx
mov dword [ecx + 4], eax
jmp 0x1014e026
push dword [esp + 0xc]
push str.misuse_of_aliased_aggregate__s
push dword [esp + 0x10]
call fcn.100463a0
add esp, 0xc
jmp 0x1014f722
mov dword [eax], 0
jmp 0x1014f46f
mov ecx, edx
movsx esi, cx
mov dword [esp + 0x18], esi
test cx, cx
je 0x1014f890
mov ecx, dword [esp + 0x24]
lea edi, [ecx + 0xe]
xor ecx, ecx
mov ebx, dword [esp + 0x18]
movzx esi, word [edi]
bt esi, 5
sbb cx, 0xffff
add edi, 0x10
dec ebx
jne 0x1014f858
jmp 0x1014f892
mov byte [esp + 0x10], 1
mov dword [esp + 0x14], 0
xor eax, eax
mov ebx, dword [esp + 0x18]
jmp 0x1014e419
mov dword [esp + 0x14], 0
jmp 0x1014f4ec
xor ecx, ecx
mov edi, dword [esp + 0x18]
shl edi, 4
mov esi, dword [esp + 0x24]
test byte [esi + edi + 0xe], 0x20
jne 0x1014f8a8
mov edx, ecx
jmp 0x1014f8b2
sub edx, ecx
mov ecx, dword [esp + 0xc]
add dx, word [ecx + 0x24]
mov edi, dword [esp + 4]
jmp 0x1014e4b1
mov edx, dword [ecx]
xor esi, esi
mov ecx, dword [esp + 0x20]
movzx ebx, byte [ecx + esi]
movzx ecx, byte [edx + esi]
cmp bl, cl
jne 0x1014f8d8
test ebx, ebx
jne 0x1014f8e6
jmp 0x1014e53b
mov ah, byte [ebx + 0x101af7e8]
cmp ah, byte [ecx + 0x101af7e8]
jne 0x1014f8e9
inc esi
jmp 0x1014f8bf
mov dword [esp + 0xc], 0
mov ebx, dword [esp + 0x14]
jmp 0x1014e094
xor ecx, ecx
mov cl, al
mov dword [esp + 0x28], ecx
xor edx, edx
xor ecx, ecx
inc ecx
mov eax, dword [ebp + 0xc]
test byte [eax + 7], 1
cmove ecx, dword [esp + 0x28]
mov dword [esp + 0x10], ecx
jmp 0x1014e152
mov eax, str.wrong_number_of_arguments_to_function__T__
jmp 0x1014f319