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

Disassembly:
sub esp, 0x64
xor ecx, ecx
push ebx
mov ebx, dword [esp + 0x6c]
mov eax, ecx
push esi
mov dword [esp + 0xc], ecx
mov dword [esp + 0x28], eax
mov esi, dword [ebx]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x24], ecx
cmp dword [ebx + 0x24], ecx
jne 0x560073
cmp byte [ebx + 0xdc], 1
jne 0x55f493
cmp byte [esp + 0x98], 2
jne 0x560073
push ebx
call fcn.005735fc
pop ecx
test eax, eax
jne 0x560073
mov eax, dword [esp + 0x80]
push ebp
push edi
push eax
push ebx
mov dword [esp + 0x18], eax
call fcn.0056a08a
pop ecx
pop ecx
test eax, eax
jne 0x56006a
cmp dword [esp + 0x84], eax
je 0x55f5ab
mov edi, dword [esp + 0x80]
lea eax, [esp + 0x30]
push eax
push edi
push dword [esp + 0x84]
push ebx
call fcn.0057936e
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x18], ebp
test ebp, ebp
js 0x56006a
cmp byte [esi + 0xb1], 0
jne 0x55f52d
push dword [esp + 0x84]
push ebx
call fcn.00577a16
cmp dword [edi + 4], 0
pop ecx
pop ecx
jne 0x55f52d
test eax, eax
je 0x55f52d
mov ecx, dword [esi + 0x10]
mov eax, dword [eax + 0x3c]
push 1
cmp eax, dword [ecx + 0x1c]
pop eax
cmove ebp, eax
mov dword [esp + 0x18], ebp
mov eax, dword [esp + 0x30]
push eax
push str.index
push ebp
lea eax, [esp + 0x4c]
push ebx
push eax
call fcn.00566a39
mov edi, dword [esp + 0x98]
lea eax, [esp + 0x54]
push edi
push eax
call fcn.00566a9f
lea eax, [edi + 8]
push eax
push 0
push ebx
call fcn.0056c917
mov edi, eax
add esp, 0x28
mov dword [esp + 0x28], edi
test edi, edi
je 0x56006a
xor eax, eax
inc eax
cmp ebp, eax
jne 0x55f599
mov eax, dword [esi + 0x10]
mov eax, dword [eax + 0x1c]
cmp eax, dword [edi + 0x3c]
je 0x55f599
push dword [edi]
push str.cannot_create_a_TEMP_index_on_non_TEMP_table___s_
push ebx
call fcn.00561f37
add esp, 0xc
jmp 0x55fb80
test byte [edi + 0x1c], 0x80
je 0x55f5ce
push edi
call fcn.00572edd
mov dword [esp + 0x30], eax
jmp 0x55f5cd
mov edi, dword [ebx + 0xf8]
mov dword [esp + 0x28], edi
test edi, edi
je 0x56006a
push dword [edi + 0x3c]
push esi
call fcn.0057526e
mov ebp, eax
pop ecx
mov dword [esp + 0x1c], ebp
pop ecx
push 7
mov eax, ebp
shl eax, 4
add eax, dword [esi + 0x10]
push str.sqlite_
push dword [edi]
mov dword [esp + 0x2c], eax
call fcn.00528757
add esp, 0xc
test eax, eax
jne 0x55f609
cmp byte [esi + 0xb1], al
jne 0x55f609
cmp dword [esp + 0x84], eax
je 0x55f609
push dword [edi]
push str.table__s_may_not_be_indexed
jmp 0x55f58b
mov al, byte [edi + 0x2b]
cmp al, 2
jne 0x55f620
push str.views_may_not_be_indexed
push ebx
call fcn.00561f37
jmp 0x55fb7e
cmp al, 1
jne 0x55f62b
push str.virtual_tables_may_not_be_indexed
jmp 0x55f615
mov eax, dword [esp + 0x30]
test eax, eax
je 0x55f6f1
push 0
push dword [eax + 4]
push dword [eax]
push esi
call fcn.00560620
push eax
mov dword [esp + 0x28], eax
call fcn.00561210
mov eax, dword [esp + 0x28]
add esp, 0x14
test eax, eax
je 0x55fb80
push dword [edi]
push str.index
push eax
push ebx
call fcn.0055d564
add esp, 0x10
test eax, eax
jne 0x55fb80
cmp byte [ebx + 0xdc], 2
jae 0x55f78b
cmp byte [esi + 0xb1], al
jne 0x55f6b0
mov eax, dword [esp + 0x20]
push dword [eax]
push dword [esp + 0x18]
push esi
call fcn.00566398
add esp, 0xc
test eax, eax
je 0x55f6b0
push dword [esp + 0x14]
push str.there_is_already_a_table_named__s
jmp 0x55f58b
mov eax, dword [esp + 0x20]
push dword [eax]
push dword [esp + 0x18]
push esi
call fcn.00566334
add esp, 0xc
test eax, eax
je 0x55f72a
cmp dword [esp + 0x9c], 0
jne 0x55f6df
push dword [esp + 0x14]
push str.index__s_already_exists
jmp 0x55f58b
push ebp
push ebx
call fcn.0055e161
push ebx
call fcn.0056761b
jmp 0x55f591
mov eax, dword [edi + 8]
xor ecx, ecx
inc ecx
jmp 0x55f6fd
mov eax, dword [eax + 0x14]
inc ecx
test eax, eax
jne 0x55f6f9
push ecx
push dword [edi]
push str.sqlite_autoindex__s__d
push esi
call fcn.0056cc7e
add esp, 0x10
mov dword [esp + 0x14], eax
test eax, eax
je 0x55fb80
cmp byte [ebx + 0xdc], 0
je 0x55f72a
inc byte [eax + 7]
cmp byte [ebx + 0xdc], 2
jae 0x55f78b
mov eax, dword [esp + 0x20]
mov ecx, str.sqlite_temp_master
cmp ebp, 1
mov eax, dword [eax]
push eax
mov dword [esp + 0x38], eax
mov eax, str.sqlite_master
push 0
cmove eax, ecx
push eax
push 0x12
push ebx
call fcn.00559d89
add esp, 0x14
test eax, eax
jne 0x55fb80
push dword [esp + 0x34]
xor ecx, ecx
push dword [edi]
inc ecx
push dword [esp + 0x1c]
cmp ebp, ecx
push 3
pop eax
cmovne eax, ecx
push eax
push ebx
call fcn.00559d89
add esp, 0x14
test eax, eax
jne 0x55fb80
mov ebp, dword [esp + 0x88]
push 8
pop edx
test ebp, ebp
jne 0x55f7f6
movsx ecx, word [edi + 0x22]
mov eax, dword [edi + 4]
add ecx, ecx
or word [eax + ecx*8 - 2], dx
mov eax, dword [eax + ecx*8 - 0x10]
push eax
mov dword [esp + 0x38], eax
call fcn.00578223
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x38]
push ebp
push eax
push 0x3b
push esi
call fcn.0056242d
push eax
push dword [ebx]
call fcn.00565453
mov ebp, eax
add esp, 0x1c
mov dword [esp + 0x10], ebp
test ebp, ebp
je 0x55fb80
or eax, 0xffffffff
push eax
push dword [esp + 0x9c]
push ebp
call fcn.00565808
add esp, 0xc
jmp 0x55f80f
push str.index
push ebp
push ebx
call fcn.005655b2
add esp, 0xc
cmp dword [ebx + 0x24], 0
jne 0x55fb80
xor ecx, ecx
mov dword [esp + 0x88], ecx
cmp dword [ebp], ecx
jle 0x55f860
lea eax, [ebp + 8]
mov edi, ecx
mov dword [esp + 0x34], eax
mov edx, dword [eax]
cmp byte [edx], 0x71
jne 0x55f844
push dword [edx + 8]
call fcn.00578223
inc eax
pop ecx
mov ecx, dword [esp + 0x88]
add edi, eax
mov eax, dword [esp + 0x34]
inc ecx
add eax, 0x14
mov dword [esp + 0x88], ecx
mov dword [esp + 0x34], eax
cmp ecx, dword [ebp]
jl 0x55f826
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x28]
push dword [esp + 0x14]
call fcn.00578223
pop ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x88], eax
test ecx, ecx
je 0x55f87f
movzx ecx, word [ecx + 0x32]
jmp 0x55f882
xor ecx, ecx
inc ecx
lea edx, [esp + 0x3c]
push edx
mov edx, dword [esp + 0x20]
inc edx
add eax, edx
push eax
mov ax, word [ebp]
add ax, cx
movzx eax, ax
push eax
push esi
call fcn.00558395
add esp, 0x10
mov ebp, eax
cmp byte [esi + 0x57], 0
jne 0x55fb73
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x88]
mov dword [ebp], edx
lea eax, [edx + 1]
add eax, ecx
inc ecx
push ecx
push dword [esp + 0x18]
mov dword [esp + 0x44], eax
push edx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [esp + 0x98]
add esp, 0xc
mov byte [ebp + 0x36], al
neg eax
mov dword [ebp + 0xc], edi
sbb ecx, ecx
mov eax, dword [ebp + 0x38]
and eax, 0xfffffff7
and ecx, 8
or ecx, eax
movzx eax, byte [esp + 0xa0]
xor eax, ecx
and eax, 3
xor eax, ecx
mov ecx, dword [esp + 0x18]
mov dword [ebp + 0x38], eax
add ecx, ecx
mov eax, dword [esi + 0x10]
mov eax, dword [eax + ecx*8 + 0xc]
mov dword [ebp + 0x18], eax
mov eax, dword [esp + 0x10]
movzx eax, word [eax]
mov word [ebp + 0x32], ax
mov ecx, eax
mov eax, dword [esp + 0x94]
test eax, eax
je 0x55f950
push 0
push eax
push 2
push edi
push ebx
call fcn.00574345
mov eax, dword [esp + 0xa8]
add esp, 0x14
and dword [esp + 0x94], 0
movzx ecx, word [ebp + 0x32]
mov dword [ebp + 0x24], eax
cmp byte [ebx + 0xdc], 2
movzx eax, cx
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0xc]
mov al, byte [eax + 0x4c]
mov byte [esp + 0x88], al
mov eax, dword [esp + 0x10]
lea ecx, [eax + 8]
mov dword [esp + 0x1c], ecx
jb 0x55f984
and dword [esp + 0x10], 0
mov dword [ebp + 0x28], eax
xor edx, edx
xor eax, eax
mov dword [esp + 0x20], edx
cmp ax, word [esp + 0x34]
jae 0x55fb0c
push dword [ecx]
call fcn.00578207
mov eax, dword [esp + 0x20]
push 0
push dword [eax]
push 0x20
push edi
push ebx
call fcn.00574345
xor ecx, ecx
add esp, 0x18
cmp dword [ebx + 0x24], ecx
jne 0x55fb73
mov eax, dword [esp + 0x1c]
push dword [eax]
call fcn.00565a99
add esp, 4
cmp byte [eax], 0xa7
je 0x55fa12
cmp edi, dword [ebx + 0xf8]
je 0x55fb66
cmp dword [ebp + 0x28], ecx
jne 0x55f9ec
mov eax, dword [esp + 0x10]
mov dword [ebp + 0x28], eax
mov dword [esp + 0x10], ecx
mov edx, dword [esp + 0x20]
push 0xfffffffffffffffe
pop eax
mov ecx, eax
mov eax, dword [ebp + 4]
push ecx
pop esi
mov word [eax + edx*2], si
mov eax, dword [ebp + 0x38]
mov esi, dword [esp + 0x24]
and eax, 0xfffffff7
or eax, 0x1000
mov dword [ebp + 0x38], eax
jmp 0x55fa4e
movsx ecx, word [eax + 0x20]
test ecx, ecx
jns 0x55fa20
movsx ecx, word [edi + 0x20]
jmp 0x55fa43
mov eax, dword [edi + 4]
mov edx, ecx
add edx, edx
test byte [eax + edx*8 + 4], 0xf
jne 0x55fa32
and dword [ebp + 0x38], 0xfffffff7
mov eax, dword [edi + 4]
test byte [eax + edx*8 + 0xe], 0x20
je 0x55fa43
or dword [ebp + 0x38], 0x1800
mov eax, dword [ebp + 4]
mov edx, dword [esp + 0x20]
mov word [eax + edx*2], cx
mov eax, dword [esp + 0x1c]
mov eax, dword [eax]
cmp byte [eax], 0x71
jne 0x55fa8b
mov esi, dword [eax + 8]
push esi
call fcn.00578223
lea edi, [eax + 1]
push edi
push esi
mov esi, dword [esp + 0x48]
push esi
call sub.VCRUNTIME140.dll_memcpy
mov eax, esi
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x34]
add esp, 0x10
lea ecx, [edi + eax]
mov edi, dword [esp + 0x28]
mov dword [esp + 0x3c], ecx
jmp 0x55faa0
test ecx, ecx
js 0x55faa4
shl ecx, 4
add ecx, dword [edi + 4]
push ecx
call fcn.0055e26b
pop ecx
mov dword [esp + 0x34], eax
test eax, eax
jne 0x55faad
mov eax, 0x657310
mov dword [esp + 0x34], eax
cmp byte [esi + 0xb1], 0
jne 0x55fac7
push eax
push ebx
call fcn.0056c7ae
pop ecx
pop ecx
test eax, eax
je 0x55fb73
mov edx, dword [esp + 0x20]
mov eax, dword [ebp + 0x20]
mov ecx, dword [esp + 0x34]
mov dword [eax + edx*4], ecx
mov eax, dword [esp + 0x1c]
movzx ecx, byte [eax + 8]
xor eax, eax
cmp byte [esp + 0x88], 4
cmovb ecx, eax
mov eax, dword [ebp + 0x1c]
mov byte [edx + eax], cl
inc edx
mov ecx, dword [esp + 0x1c]
movzx eax, word [ebp + 0x32]
add ecx, 0x14
mov dword [esp + 0x20], edx
mov dword [esp + 0x1c], ecx
cmp edx, eax
jl 0x55f997
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x55fbc6
and dword [esp + 0x88], 0
xor ecx, ecx
cmp cx, word [eax + 0x32]
jae 0x55fbda
mov esi, dword [esp + 0x88]
mov ebx, eax
mov edi, dword [esp + 0x20]
mov eax, dword [ebx + 4]
push esi
push ebx
movzx eax, word [eax + esi*2]
mov dword [esp + 0x90], eax
movzx eax, word [ebp + 0x32]
push eax
push ebp
call fcn.00545d51
add esp, 0x10
test eax, eax
je 0x55fb88
mov eax, 0xffff
add word [ebp + 0x34], ax
jmp 0x55fbaf
push str.expressions_prohibited_in_PRIMARY_KEY_and_UNIQUE_constraints
push ebx
call fcn.00561f37
pop ecx
pop ecx
test ebp, ebp
je 0x55fb80
push ebp
push esi
call fcn.00567d19
pop ecx
pop ecx
add edi, 8
jmp 0x560001
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x88]
mov word [eax + edi*2], cx
mov eax, dword [ebx + 0x20]
mov ecx, dword [ebp + 0x20]
mov eax, dword [eax + esi*4]
mov dword [ecx + edi*4], eax
mov eax, dword [ebx + 0x1c]
mov ecx, dword [ebp + 0x1c]
mov al, byte [esi + eax]
mov byte [edi + ecx], al
inc edi
movzx eax, word [ebx + 0x32]
inc esi
cmp esi, eax
jl 0x55fb39
mov ebx, dword [esp + 0x78]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
jmp 0x55fbda
mov eax, dword [ebp + 4]
or ecx, 0xffffffff
mov word [eax + edx*2], cx
mov eax, dword [ebp + 0x20]
mov dword [eax + edx*4], 0x657310
push ebp
call fcn.0056075d
cmp dword [ebx + 0xf8], 0
pop ecx
jne 0x55fbf1
push ebp
call fcn.0053e90a
pop ecx
push ebp
call fcn.00552851
cmp dword [esp + 0x88], 0
pop ecx
je 0x55fc6d
movzx ecx, word [ebp + 0x34]
movsx eax, word [edi + 0x22]
cmp ecx, eax
jl 0x55fc6d
mov eax, dword [ebp + 0x38]
xor ecx, ecx
or eax, 0x20
mov dword [esp + 0x88], ecx
mov dword [esp + 0x34], eax
xor edx, edx
mov dword [ebp + 0x38], eax
movzx eax, word [edi + 0x22]
cmp dx, ax
jge 0x55fc6d
mov dword [esp + 0x3c], eax
movsx eax, word [edi + 0x20]
cmp ecx, eax
je 0x55fc50
push ecx
push ebp
call fcn.005786d6
pop ecx
pop ecx
test ax, ax
js 0x55fc63
mov ecx, dword [esp + 0x88]
mov eax, dword [esp + 0x3c]
inc ecx
cwde
mov dword [esp + 0x88], ecx
cmp ecx, eax
jge 0x55fc6d
jmp 0x55fc33
mov eax, dword [esp + 0x34]
and eax, 0xffffffdf
mov dword [ebp + 0x38], eax
cmp edi, dword [ebx + 0xf8]
jne 0x55fd42
mov ecx, dword [edi + 8]
mov dword [esp + 0x88], ecx
test ecx, ecx
je 0x55fd42
movzx edx, word [ebp + 0x32]
movzx eax, word [ecx + 0x32]
cmp ax, dx
jne 0x55fd30
mov esi, eax
xor edx, edx
mov dword [esp + 0x2c], esi
xor esi, esi
cmp si, ax
mov esi, dword [esp + 0x24]
jae 0x55fd21
mov esi, dword [esp + 0x88]
mov edi, edx
mov ecx, dword [ebp + 4]
mov dword [esp + 0x20], eax
movzx eax, ax
mov ebx, dword [esi + 4]
mov dword [esp + 0x3c], ecx
sub ebx, ecx
mov dword [esp + 0x2c], eax
mov ax, word [ebx + ecx]
cmp ax, word [ecx]
jne 0x55fd06
mov eax, dword [ebp + 0x20]
push dword [eax + edi*4]
mov eax, dword [esi + 0x20]
push dword [eax + edi*4]
call fcn.005781b4
pop ecx
pop ecx
test eax, eax
jne 0x55fd06
mov ecx, dword [esp + 0x3c]
inc edi
mov eax, dword [esp + 0x20]
add ecx, 2
movzx eax, ax
mov dword [esp + 0x3c], ecx
cmp edi, eax
jl 0x55fccf
mov ebx, dword [esp + 0x78]
mov esi, dword [esp + 0x24]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x34], edi
mov edi, dword [esp + 0x28]
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x2c]
movzx eax, ax
cmp edx, eax
je 0x55fda2
movzx edx, word [ebp + 0x32]
mov ecx, dword [ecx + 0x14]
mov dword [esp + 0x88], ecx
test ecx, ecx
jne 0x55fc8f
cmp byte [ebx + 0xdc], 2
jae 0x55ffbc
cmp byte [esi + 0xb1], 0
je 0x55fe3e
cmp dword [esp + 0x84], 0
je 0x55fe11
mov eax, dword [esi + 0xac]
push ebp
mov dword [ebp + 0x2c], eax
call fcn.0056a46f
pop ecx
test eax, eax
je 0x55fe11
push str.invalid_rootpage
push ebx
call fcn.00561f37
push 0x1e803
call fcn.0055ed8e
add esp, 0xc
mov dword [ebx + 0xc], eax
jmp 0x55fb73
mov al, byte [ecx + 0x36]
mov dl, byte [ebp + 0x36]
cmp al, dl
je 0x55fdd8
cmp al, 0xb
je 0x55fdcc
cmp dl, 0xb
je 0x55fdcc
push 0
push str.conflicting_ON_CONFLICT_clauses_specified
push ebx
call fcn.00561f37
mov ecx, dword [esp + 0x94]
add esp, 0xc
cmp byte [ecx + 0x36], 0xb
jne 0x55fdd8
mov al, byte [ebp + 0x36]
mov byte [ecx + 0x36], al
cmp byte [esp + 0xa0], 2
jne 0x55fdee
mov eax, dword [ecx + 0x38]
and eax, 0xfffffffc
xor eax, 2
mov dword [ecx + 0x38], eax
cmp byte [ebx + 0xdc], 2
jb 0x55fb73
mov eax, dword [ebx + 0xfc]
mov dword [ebp + 0x14], eax
mov dword [ebx + 0xfc], ebp
xor ebp, ebp
jmp 0x55fb73
mov eax, dword [ebp + 0x18]
push ebp
push dword [ebp]
add eax, 0x18
push eax
call fcn.0056a129
add esp, 0xc
test eax, eax
je 0x55fe33
push esi
call fcn.0056d4a3
jmp 0x55fb72
xor eax, eax
inc eax
or dword [esi + 0x18], eax
jmp 0x55ffbc
test byte [edi + 0x1c], 0x80
je 0x55fe53
mov eax, dword [esp + 0x84]
test eax, eax
je 0x55ffc3
inc dword [ebx + 0x2c]
mov eax, dword [ebx + 0x2c]
push ebx
mov dword [esp + 0x7c], eax
call fcn.0056a013
mov dword [esp + 0x8c], eax
pop ecx
test eax, eax
je 0x55fb73
push dword [esp + 0x18]
xor eax, eax
inc eax
push eax
push ebx
call fcn.0055a6a1
push 0xbb
push dword [esp + 0x98]
call fcn.0057b73c
push 2
push dword [esp + 0x90]
mov dword [ebp + 0x2c], eax
push dword [esp + 0x34]
push 0x93
push dword [esp + 0xac]
call fcn.0057b786
add esp, 0x28
cmp dword [esp + 0x90], 0
je 0x55ff07
mov edx, dword [ebx + 0xd4]
add edx, dword [ebx + 0xd0]
mov eax, dword [esp + 0x30]
mov ecx, edx
sub ecx, dword [eax]
push dword [eax]
cmp byte [edx - 1], 0x3b
lea eax, [ecx - 1]
cmovne eax, ecx
cmp dword [esp + 0x90], 0
push eax
mov ecx, str._UNIQUE
mov eax, 0x658f34
cmovne eax, ecx
push eax
push str.CREATE_s_INDEX__.s
push esi
call fcn.0056cc7e
add esp, 0x14
jmp 0x55ff09
xor eax, eax
mov ecx, dword [esp + 0x18]
push eax
push dword [esp + 0x7c]
mov dword [esp + 0x44], eax
add ecx, ecx
push dword [edi]
mov eax, dword [esi + 0x10]
push dword [ebp]
push dword [eax + ecx*8]
push str.INSERT_INTO__Q.sqlite_master_VALUES_index__Q__Q__d__Q__
push ebx
call fcn.0056d352
mov eax, dword [esp + 0x58]
add esp, 0x1c
test eax, eax
je 0x55ff42
push eax
push esi
call fcn.00560283
pop ecx
pop ecx
cmp dword [esp + 0x84], 0
je 0x55ffa4
push dword [esp + 0x78]
push ebp
push ebx
call fcn.0057391e
push dword [esp + 0x24]
push ebx
call fcn.0055d539
add esp, 0x14
push 0
push dword [ebp]
push str.name_q_AND_typeindex
push esi
call fcn.0056cc7e
add esp, 0xc
push eax
push dword [esp + 0x20]
push dword [esp + 0x94]
call fcn.0057b964
push 0
xor eax, eax
inc eax
push eax
push 0
push 0xa6
push dword [esp + 0xa8]
call fcn.0057b786
add esp, 0x24
push dword [ebp + 0x2c]
mov edx, dword [esp + 0x8c]
push edx
call fcn.0058273c
pop ecx
pop ecx
mov ecx, dword [edx + 0x6c]
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x84]
cmp byte [esi + 0xb1], 0
jne 0x55ffe8
test eax, eax
je 0x55ffe8
cmp byte [ebx + 0xdc], 2
jb 0x55fb73
mov dword [ebx + 0xfc], ebp
jmp 0x55fb80
mov eax, dword [edi + 8]
mov dword [ebp + 0x14], eax
mov dword [edi + 8], ebp
jmp 0x55fb80
cmp byte [ecx + 0x36], 5
lea edx, [ecx + 0x14]
je 0x560062
mov edi, edx
mov ecx, dword [edi]
test ecx, ecx
jne 0x55fff6
mov ebx, dword [esp + 0x10]
pop edi
pop ebp
mov eax, dword [esp + 0x8c]
test eax, eax
je 0x560021
push eax
push esi
call fcn.0056485a
pop ecx
pop ecx
test ebx, ebx
je 0x56002e
push ebx
push esi
call fcn.005408da
pop ecx
pop ecx
push dword [esp + 0x7c]
push esi
call fcn.0057762b
mov eax, dword [esp + 0x14]
pop ecx
pop ecx
test eax, eax
je 0x56004b
push eax
push esi
call fcn.00560283
pop ecx
pop ecx
pop esi
pop ebx
add esp, 0x64
ret
cmp byte [eax + 0x36], 5
je 0x560007
mov dword [edi], eax
lea edi, [eax + 0x14]
mov eax, dword [edi]
mov dword [edx], eax
mov dword [edi], ecx
mov eax, dword [edx]
test eax, eax
jne 0x560051
jmp 0x560007
mov ebx, dword [esp + 0x88]
jmp 0x56000b
mov ebx, dword [esp + 0x80]
jmp 0x56000d