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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x94
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov edi, dword [ebp + 0xc]
mov esi, dword [ebx + 8]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 4], 0
nop dword [eax]
test edi, edi
je case.0x555423.21
movzx edx, byte [edi]
mov dword [ebp - 0x1c], edx
lea eax, [edx - 0x13]
cmp eax, 0xa1
ja case.0x555423.21
movzx eax, byte [eax + 0x556438]
jmp dword [eax*4 + 0x5563c0]
mov edi, dword [edi + 0xc]
mov dword [ebp + 0xc], edi
jmp 0x555400
movsx eax, word [edi + 0x22]
mov edx, dword [edi + 0x28]
lea ecx, [eax + eax*4]
cmp byte [edx], 0
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov dword [ebp - 0x14], eax
jne 0x555454
mov eax, dword [eax + 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [edx + 1], 0
je case.0x555423.166
mov edi, dword [eax]
mov ebx, dword [ebp + 0x10]
movsx eax, word [eax + 0x12]
push ebx
push eax
push dword [edx + 8]
push 0x5b
push esi
call fcn.00575e10
mov eax, dword [ebp - 0x14]
add esp, 0x14
movzx eax, word [eax + 0x10]
test ax, ax
js 0x555f8c
cwde
lea ecx, [eax + eax*4]
mov eax, dword [edi + 4]
cmp byte [eax + ecx*4 + 0xd], 0x45
jne 0x555f8c
push ebx
push 0x54
push esi
call fcn.00575d50
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test byte [edi + 4], 8
mov ecx, dword [edi + 0x1c]
je 0x555593
mov edx, dword [ebp + 0x10]
push edx
push dword [edi + 0xc]
push ebx
call fcn.005553d0
mov ecx, dword [edi + 0x2c]
add esp, 0xc
mov ebx, eax
test ecx, ecx
je 0x5554e0
movsx eax, word [edi + 0x20]
push eax
push ecx
call fcn.005715e0
add esp, 8
jmp 0x5554e3
mov al, byte [edi + 1]
movsx eax, al
cmp eax, 0x41
jle 0x5563b4
mov edx, dword [esi + 0x6c]
lea edi, [eax*2 + 0x66a064]
cmp dword [esi + 0x70], edx
jg 0x555512
push 0
push 1
push ebx
push 0x5c
push esi
call fcn.00532a40
add esp, 0x14
mov edx, eax
jmp 0x555541
lea eax, [edx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x5c
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
cmp byte [eax + 0x53], 0
jne 0x5563b4
test edx, edx
jns 0x555555
mov edx, dword [esi + 0x6c]
dec edx
mov eax, dword [esi + 0x68]
lea ecx, [edx + edx*4]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
je 0x55557b
push 0xffffffffffffffff
push edi
push eax
push esi
call fcn.00591340
add esp, 0x10
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test edi, edi
je 0x5563b4
mov dword [eax + 0x10], edi
pop edi
mov byte [eax + 1], 0xff
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test ecx, ecx
jns 0x555669
mov eax, dword [ebx + 0x34]
test eax, eax
jns 0x555666
mov ecx, dword [edi + 0x2c]
movzx edx, word [edi + 0x20]
mov dword [ebp - 0x14], ecx
movsx ecx, dx
test ecx, ecx
jns 0x5555c0
pop edi
pop esi
not eax
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x2c]
lea ecx, [ecx + ecx*4]
push edx
push dword [ebp - 0x14]
mov eax, dword [eax + 4]
lea edi, [eax + ecx*4]
call fcn.00571630
movsx ecx, ax
add esp, 8
sub ecx, dword [ebx + 0x34]
movzx eax, word [edi + 0x10]
mov dword [ebp - 0x14], ecx
test al, 0x60
je 0x55563e
test eax, 0x100
je 0x555609
push dword [edi]
push str.generated_column_loop_on___s_
push ebx
call fcn.005530b0
add esp, 0xc
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
or eax, 0x100
mov word [edi + 0x10], ax
movzx edx, ax
test al, al
jns 0x55562b
push ecx
push edi
push ebx
call fcn.00554280
movzx edx, word [edi + 0x10]
add esp, 0xc
mov ecx, dword [ebp - 0x14]
and edx, 0xfe7f
mov word [edi + 0x10], dx
pop edi
pop esi
mov eax, ecx
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [edi + 0xd], 0x45
jne 0x555635
mov ebx, dword [ebp + 0x10]
push ebx
push ecx
push 0x4e
push esi
call fcn.00575db0
push ebx
push 0x54
push esi
call fcn.00575d50
add esp, 0x1c
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [eax - 1]
mov al, byte [edi + 2]
mov edx, dword [ebp + 0x10]
push edx
mov byte [ebp - 5], al
movsx eax, word [edi + 0x20]
push eax
push ecx
push dword [edi + 0x2c]
push esi
call fcn.00554390
add esp, 0x14
cmp byte [ebp - 5], 0
je 0x5556b7
mov edx, dword [ebx + 8]
mov eax, dword [edx]
mov ecx, dword [edx + 0x6c]
dec ecx
cmp byte [eax + 0x53], 0
je 0x5556a1
mov ecx, 0x6e1804
jmp 0x5556aa
mov eax, dword [edx + 0x68]
lea ecx, [ecx + ecx*4]
lea ecx, [eax + ecx*4]
cmp byte [ecx], 0x5b
jne 0x5556b7
movzx eax, byte [ebp - 5]
mov word [ecx + 2], ax
cmp dword [edi + 0x2c], 0
jne 0x555f8c
cmp byte [edi + 1], 0x45
jne 0x555f8c
push dword [ebp + 0x10]
push 0x54
push esi
call fcn.00575d50
mov eax, dword [ebp + 0x10]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x10]
push esi
push 0
push edi
push ebx
call fcn.00524650
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test edi, edi
je 0x555710
test dword [edi + 4], 0x1000
je 0x555710
mov edi, dword [edi + 0xc]
test edi, edi
jne 0x555700
mov eax, dword [edi + 8]
xor ecx, ecx
mov ebx, dword [ebp + 0x10]
push ebx
cmp byte [eax + 4], cl
sete cl
push ecx
push 0x45
push esi
call fcn.00575db0
add esp, 0x10
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebp + 0x10]
push ebx
push 0
push dword [edi + 8]
push esi
call fcn.00524920
add esp, 0x10
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [edi + 8]
mov ebx, dword [ebp + 0x10]
push ebx
push esi
call fcn.00580290
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [edi + 8]
add ecx, 2
jne 0x555774
xor esi, esi
jmp 0x55578f
mov esi, ecx
lea edx, [esi + 1]
nop dword [eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x555780
sub esi, edx
and esi, 0x3fffffff
mov ebx, dword [ebp - 0x18]
dec esi
push esi
push ecx
push dword [ebx]
call fcn.0055ea10
mov edi, eax
add esp, 0xc
mov eax, esi
mov esi, dword [ebx + 0x6c]
cdq
sub eax, edx
mov edx, eax
sar edx, 1
cmp dword [ebx + 0x70], esi
jg 0x5557c7
push 0
push dword [ebp + 0x10]
push edx
push 0x4a
push ebx
call fcn.00532a40
add esp, 0x14
mov esi, eax
jmp 0x5557f5
lea eax, [esi + 1]
mov dword [ebx + 0x6c], eax
lea ecx, [esi + esi*4]
mov eax, dword [ebx + 0x68]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [ebp + 0x10]
mov dword [eax + ecx*4], 0x4a
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [ebx]
cmp byte [ecx + 0x53], 0
je 0x555881
test edi, edi
je 0x555f8c
cmp dword [ecx + 0x200], 0
je 0x555826
push edi
push ecx
call fcn.00535fb0
mov eax, dword [ebp + 0x10]
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edi, dword [ecx + 0x154]
jae 0x55586e
cmp edi, dword [ecx + 0x14c]
jb 0x55584e
mov eax, dword [ecx + 0x148]
mov dword [edi], eax
mov eax, dword [ebp + 0x10]
mov dword [ecx + 0x148], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edi, dword [ecx + 0x150]
jb 0x55586e
mov eax, dword [ecx + 0x140]
mov dword [edi], eax
mov eax, dword [ebp + 0x10]
mov dword [ecx + 0x140], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push edi
call fcn.0050dbb0
mov eax, dword [ebp + 0x10]
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test esi, esi
jns 0x555889
mov esi, dword [ebx + 0x6c]
dec esi
mov eax, dword [ebx + 0x68]
lea ecx, [esi + esi*4]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
je 0x5558b0
push 0xfffffffffffffff9
push edi
push eax
push ebx
call fcn.00591340
mov eax, dword [ebp + 0x10]
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test edi, edi
je 0x555f8c
mov dword [eax + 0x10], edi
pop edi
pop esi
mov byte [eax + 1], 0xf9
mov eax, dword [ebp + 0x10]
pop ebx
mov esp, ebp
pop ebp
ret
push dword [ebp + 0x10]
movsx eax, word [edi + 0x20]
push eax
push 0x4b
push esi
call fcn.00575db0
mov eax, dword [edi + 8]
add esp, 0x10
cmp byte [eax + 1], 0
je 0x555f8c
mov edx, dword [ebx + 0xd8]
test edx, edx
je 0x55590f
mov ebx, dword [edx + 4]
mov eax, 2
movsx edi, word [edi + 0x20]
nop
cmp dword [edx + eax*4], edi
lea ecx, [edx + eax*4]
je 0x555929
add eax, dword [ecx + 4]
cmp eax, ebx
jl 0x555900
xor ecx, ecx
push 0xffffffffffffffff
push ecx
push esi
mov dword [edx], ecx
call fcn.00576290
mov eax, dword [ebp + 0x10]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
add ecx, 8
mov dword [edx], 0
push 0xffffffffffffffff
push ecx
push esi
call fcn.00576290
mov eax, dword [ebp + 0x10]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x1c]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [ebp + 0x10]
push dword [edi + 0xc]
push ebx
call fcn.005553d0
mov ebx, dword [ebp + 0x10]
add esp, 0xc
mov dword [ebp - 0x10], eax
cmp eax, ebx
je 0x55597b
push ebx
push eax
push 0x4e
push esi
call fcn.00575db0
add esp, 0x10
mov dword [ebp - 0x10], ebx
push 0
push dword [edi + 8]
call fcn.005461d0
movsx eax, al
push eax
push ebx
push 0x55
push esi
call fcn.00575db0
mov eax, dword [ebp - 0x10]
add esp, 0x18
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
mov dword [ebp - 4], 0x80
cmp edx, 0x2d
sete al
lea edx, [eax + 0x34]
mov dword [ebp - 0x1c], edx
mov eax, dword [edi + 0xc]
push eax
mov dword [ebp - 0x10], eax
call fcn.005578d0
add esp, 4
test eax, eax
je 0x5559e2
push dword [ebp - 4]
push edx
push dword [ebp + 0x10]
push edi
push ebx
call fcn.005255e0
mov eax, dword [ebp + 0x10]
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 0x10]
push ebx
call fcn.005564e0
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x20]
push eax
push dword [edi + 0x10]
push ebx
call fcn.005564e0
push dword [ebp + 0x10]
mov dword [ebp - 0x28], eax
push 1
push 0x45
push esi
call fcn.00575db0
mov eax, dword [edi + 4]
shr eax, 9
and eax, 1
push eax
push dword [ebp - 4]
mov eax, dword [esi + 0x6c]
add eax, 2
push eax
push dword [ebp - 0x28]
push dword [ebp - 0x24]
push dword [ebp - 0x1c]
push dword [edi + 0x10]
push dword [ebp - 0x10]
push ebx
call fcn.00523900
add esp, 0x4c
cmp dword [ebp - 4], 0x80
jne 0x555a59
push dword [ebp + 0x10]
push 0
push 0x45
push esi
call fcn.00575db0
add esp, 0x10
jmp 0x555c04
push dword [ebp - 0x28]
push dword [ebp + 0x10]
push dword [ebp - 0x24]
push 0x59
push esi
call fcn.00575e10
add esp, 0x14
jmp 0x555c04
lea eax, [ebp - 0xc]
push eax
push dword [edi + 0xc]
push ebx
call fcn.005564e0
mov esi, eax
lea eax, [ebp - 0x20]
push eax
push dword [edi + 0x10]
push ebx
call fcn.005564e0
mov edx, dword [ebp + 0x10]
push edx
push esi
push eax
push dword [ebp - 0x1c]
push dword [ebp - 0x18]
call fcn.00575e10
add esp, 0x2c
jmp 0x555c04
mov eax, dword [edi + 0xc]
mov cl, byte [eax]
cmp cl, 0x9a
jne 0x555aca
mov esi, dword [ebp + 0x10]
push esi
push 1
push eax
push ebx
call fcn.00524650
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp cl, 0x98
jne 0x555aea
mov ebx, dword [ebp + 0x10]
push ebx
push 1
push dword [eax + 8]
push esi
call fcn.00524920
add esp, 0x10
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0xc]
mov byte [ebp - 0x94], 0x9a
push eax
lea eax, [ebp - 0x94]
mov dword [ebp - 0x90], 0x4400
push eax
push ebx
mov dword [ebp - 0x8c], 0
call fcn.005564e0
mov esi, eax
lea eax, [ebp - 0x20]
push eax
push dword [edi + 0xc]
push ebx
call fcn.005564e0
mov edx, dword [ebp + 0x10]
push edx
push esi
push eax
push 0x6b
push dword [ebp - 0x18]
call fcn.00575e10
add esp, 0x2c
jmp 0x555c04
lea eax, [ebp - 0xc]
push eax
push dword [edi + 0xc]
push ebx
call fcn.005564e0
mov edx, dword [ebp + 0x10]
push edx
push eax
push dword [ebp - 0x1c]
push esi
call fcn.00575db0
add esp, 0x1c
jmp 0x555c04
lea eax, [ebp - 0xc]
push eax
push dword [edi + 0xc]
push ebx
call fcn.005564e0
mov dword [ebp - 0x14], eax
add esp, 0xc
mov eax, dword [edi + 0x10]
test eax, eax
je 0x555b90
nop word [eax + eax]
test dword [eax + 4], 0x1000
je 0x555b90
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x555b80
mov eax, dword [eax + 8]
xor ecx, ecx
cmp byte [edi + 2], 0x2d
sete cl
mov dl, byte [eax + 4]
xor eax, eax
test dl, dl
sete al
xor ecx, eax
xor eax, eax
push ecx
test dl, dl
setne al
push eax
push dword [ebp + 0x10]
push dword [ebp - 0x14]
push 0x58
push esi
call fcn.00575f50
add esp, 0x18
jmp 0x555c04
push dword [ebp + 0x10]
push 1
push 0x45
push esi
call fcn.00575db0
lea eax, [ebp - 0xc]
push eax
push dword [edi + 0xc]
push ebx
call fcn.005564e0
push eax
push dword [ebp - 0x1c]
push esi
call fcn.00575d50
push dword [ebp + 0x10]
mov edi, dword [ebp - 0x18]
mov esi, eax
push 0
push 0x45
push edi
call fcn.00575db0
push esi
push edi
call fcn.0057ff90
add esp, 0x40
mov ecx, dword [ebp - 0xc]
test ecx, ecx
je 0x555c1f
mov al, byte [ebx + 0x13]
cmp al, 8
jae 0x555c1f
movzx eax, al
mov dword [ebx + eax*4 + 0x94], ecx
inc byte [ebx + 0x13]
mov ecx, dword [ebp - 0x20]
test ecx, ecx
je 0x556399
mov al, byte [ebx + 0x13]
cmp al, 8
jae 0x556399
movzx eax, al
pop edi
pop esi
mov dword [ebx + eax*4 + 0x94], ecx
inc byte [ebx + 0x13]
mov eax, dword [ebp + 0x10]
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x28]
test eax, eax
je 0x555c75
movzx ecx, word [edi + 0x22]
test cx, cx
js 0x555c75
movsx ecx, cx
cmp ecx, dword [eax + 0x2c]
jge 0x555c75
mov eax, dword [eax + 0x28]
lea ecx, [ecx + ecx*4]
pop edi
pop esi
pop ebx
mov eax, dword [eax + ecx*4 + 8]
mov esp, ebp
pop ebp
ret
push dword [edi + 8]
push str.misuse_of_aggregate:__s__
push ebx
call fcn.005530b0
mov eax, dword [ebp + 0x10]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test dword [edi + 4], 0x1000000
mov edx, dword [ebx]
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], 0
mov al, byte [edx + 0x50]
mov byte [ebp - 0x14], al
je 0x555cbf
mov eax, dword [edi + 0x2c]
pop edi
pop esi
pop ebx
mov eax, dword [eax + 0x38]
mov esp, ebp
pop ebp
ret
cmp byte [ebx + 0x17], 0
je 0x555ce8
push edi
call fcn.00557800
add esp, 4
test eax, eax
je 0x555ce5
push 0xffffffffffffffff
push edi
push ebx
call fcn.005551f0
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x28]
mov eax, dword [edi + 0x14]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x555cf6
mov eax, dword [eax]
jmp 0x555cf8
xor eax, eax
mov ecx, dword [edi + 8]
push 0
push dword [ebp - 0x14]
mov dword [ebp - 0x1c], eax
push eax
push ecx
push edx
mov dword [ebp - 4], ecx
call fcn.005584d0
add esp, 0x14
mov dword [ebp - 0xc], eax
test eax, eax
je 0x555f96
cmp dword [eax + 0x14], 0
jne 0x555f96
mov ecx, dword [eax + 4]
test ecx, 0x400000
je 0x555d4b
push dword [ebp + 0x10]
mov ecx, dword [ebp - 0x20]
push dword [eax + 8]
push ecx
push ebx
call fcn.0052b800
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test ecx, 0x280000
je 0x555d5e
push eax
push edi
push ebx
call fcn.00556e30
add esp, 0xc
mov ecx, dword [ebp - 0x1c]
xor eax, eax
mov dword [ebp - 4], eax
test ecx, ecx
jle 0x555e01
mov ecx, dword [ebp - 0x20]
lea edx, [eax + 1]
mov esi, dword [ebp - 0xc]
add ecx, 8
mov dword [ebp - 0x10], ecx
xor edi, edi
nop
cmp eax, 0x20
jae 0x555dbe
mov ecx, dword [ecx]
mov word [ebp - 0x34], dx
mov dword [ebp - 0x44], fcn.0052c860
mov dword [ebp - 0x40], 0x56faa0
mov dword [ebp - 0x30], 0
test ecx, ecx
je 0x555dbb
push ecx
lea eax, [ebp - 0x48]
push eax
call fcn.00597830
mov eax, dword [ebp - 4]
add esp, 8
cmp word [ebp - 0x34], 0
je 0x555dbe
bts edi, eax
test byte [esi + 4], 0x20
je 0x555dde
cmp dword [ebp - 0x24], 0
jne 0x555dde
mov eax, dword [ebp - 0x10]
push dword [eax]
push ebx
call fcn.00556660
mov dword [ebp - 0x24], eax
add esp, 8
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x10]
inc eax
add ecx, 0x14
mov dword [ebp - 4], eax
mov edx, 1
mov dword [ebp - 0x10], ecx
cmp eax, dword [ebp - 0x1c]
jl 0x555d80
mov esi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x10], edi
mov edi, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
test edx, edx
je 0x555e75
cmp dword [ebp - 0x10], 0
je 0x555e24
mov eax, dword [ebx + 0x2c]
lea esi, [eax + 1]
add eax, ecx
mov dword [ebp - 4], esi
mov esi, dword [ebp - 0x18]
mov ecx, dword [ebp - 4]
mov dword [ebx + 0x2c], eax
jmp 0x555e36
push ecx
push ebx
call fcn.0055dc90
mov edx, dword [ebp - 0x20]
mov ecx, eax
add esp, 8
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 4]
test al, 0xc0
je 0x555e61
mov ebx, dword [edx + 8]
mov bl, byte [ebx]
mov byte [ebp - 5], bl
cmp bl, 0xa6
mov ebx, dword [ebp + 8]
je 0x555e56
cmp byte [ebp - 5], 0xa8
jne 0x555e61
mov esi, dword [edx + 8]
and al, 0xc0
mov byte [esi + 2], al
mov esi, dword [ebp - 0x18]
push 3
push 0
push ecx
push edx
push ebx
call fcn.00554070
mov edx, dword [ebp - 0x20]
add esp, 0x14
jmp 0x555e7c
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x1c]
cmp eax, 2
jl 0x555ea1
test byte [edi + 4], 0x80
je 0x555ea5
push dword [edx + 0x1c]
push eax
push dword [ebp - 0xc]
push dword [ebp - 0x28]
call fcn.00584770
add esp, 0x10
mov dword [ebp - 0xc], eax
jmp 0x555ead
test eax, eax
jle 0x555eaa
push dword [edx + 8]
jmp 0x555e8d
mov eax, dword [ebp - 0xc]
test byte [eax + 4], 0x20
je 0x555f58
cmp dword [ebp - 0x24], 0
jne 0x555ec6
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 8]
mov dword [ebp - 0x24], eax
mov edx, dword [esi + 0x6c]
cmp dword [esi + 0x70], edx
jg 0x555ee3
push 0
push 0
push 0
push 0x52
push esi
call fcn.00532a40
add esp, 0x14
mov edx, eax
jmp 0x555f19
mov ebx, dword [ebp + 8]
lea eax, [edx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x52
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
cmp byte [eax + 0x53], 0
jne 0x555f58
test edx, edx
jns 0x555f29
mov edx, dword [esi + 0x6c]
dec edx
mov eax, dword [esi + 0x68]
lea ecx, [edx + edx*4]
cmp byte [eax + ecx*4 + 1], 0
lea ecx, [eax + ecx*4]
je 0x555f4a
push 0xfffffffffffffffe
push dword [ebp - 0x24]
push ecx
push esi
call fcn.00591340
add esp, 0x10
jmp 0x555f58
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x555f58
mov dword [ecx + 0x10], eax
mov byte [ecx + 1], 0xfe
movzx eax, byte [edi + 2]
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x10]
push eax
push dword [ebp - 0xc]
push esi
push dword [ebp + 0x10]
push dword [ebp - 4]
push edi
push ebx
call fcn.00575b60
add esp, 0x1c
test esi, esi
je 0x555f8c
test edi, edi
jne 0x555f8c
push esi
push dword [ebp - 4]
push ebx
call fcn.0056a8c0
add esp, 0xc
mov eax, dword [ebp + 0x10]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [ebp - 4]
push str.unknown_function:__s__
push ebx
call fcn.005530b0
mov eax, dword [ebp + 0x10]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
cmp byte [eax + 0x53], 0
jne 0x555600
cmp edx, 0x89
jne 0x555fe8
mov eax, dword [edi + 0x14]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax]
cmp eax, 1
je 0x555fe8
push 1
push eax
push ebx
call fcn.00571460
mov eax, dword [ebp + 0x10]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push edi
push ebx
call fcn.0054e210
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [edi + 0xc]
cmp dword [edx + 0x1c], 0
jne 0x556017
push edx
push ebx
call fcn.0054e210
mov ecx, eax
add esp, 8
mov eax, dword [edi + 0xc]
mov dword [eax + 0x1c], ecx
mov edx, dword [edi + 0xc]
mov esi, dword [edi + 0x1c]
test esi, esi
je 0x55603e
push edx
call fcn.005581a0
add esp, 4
cmp esi, eax
je 0x55603e
push eax
push esi
push str._d_columns_assigned__d_values
push ebx
call fcn.005530b0
mov edx, dword [edi + 0xc]
add esp, 0x10
movsx eax, word [edi + 0x20]
add eax, dword [edx + 0x1c]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebx + 0x38]
push dword [ebp + 0x10]
dec esi
push 0
push 0x48
push dword [ebp - 0x18]
lea edi, [esi - 1]
mov dword [ebx + 0x38], edi
call fcn.00575db0
push edi
push esi
push dword [ebp + 0xc]
push ebx
call fcn.005544f0
push dword [ebp + 0x10]
mov ebx, dword [ebp - 0x18]
push 1
push 0x45
push ebx
call fcn.00575db0
push esi
push ebx
call fcn.00582ac0
mov esi, dword [ebp + 0x10]
push 0
push esi
push 0x53
push ebx
call fcn.00575db0
add esp, 0x48
push edi
push ebx
call fcn.00582ac0
add esp, 8
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 0x10]
push 0
push 0
push esi
push edi
push ebx
call fcn.0052b6d0
add esp, 0x14
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movzx eax, word [edi + 0x20]
mov ebx, dword [edi + 0x2c]
push eax
movsx ecx, ax
push ebx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x14], ecx
call fcn.00571630
movsx ecx, ax
movsx eax, word [ebx + 0x2a]
inc ecx
mov ebx, dword [ebp + 0x10]
inc eax
imul eax, dword [edi + 0x1c]
push ebx
add eax, ecx
push eax
push 0x99
push esi
call fcn.00575db0
mov eax, dword [ebp - 0x14]
add esp, 0x18
test eax, eax
js 0x556399
lea ecx, [eax + eax*4]
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 4]
cmp byte [eax + ecx*4 + 0xd], 0x45
jne 0x556399
push ebx
push 0x54
push esi
call fcn.00575d50
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.row_value_misused
push ebx
call fcn.005530b0
mov eax, dword [ebp + 0x10]
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [edi + 0x1c]
mov bl, byte [ebx + 0x17]
push 0x15
push esi
call fcn.00575d50
mov edx, dword [ebp + 0x10]
mov esi, eax
mov eax, dword [ebp + 8]
push edx
mov byte [eax + 0x17], 0
push dword [edi + 0xc]
push eax
call fcn.005553d0
mov ecx, dword [ebp + 8]
push esi
mov dword [ebp + 0x10], eax
mov byte [ecx + 0x17], bl
mov ebx, dword [ebp - 0x18]
push ebx
call fcn.0057ff90
push dword [ebp + 0x10]
push esi
push ebx
call fcn.005763e0
mov eax, dword [ebp + 0x10]
add esp, 0x2c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [edi + 0x14]
xor edx, edx
mov eax, dword [ebx]
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x1c], edx
lea ecx, [esi + 8]
mov dword [ebp - 0x24], eax
mov esi, dword [esi]
dec dword [ebx + 0x38]
mov edi, dword [edi + 0xc]
mov dword [ebp - 0x20], esi
mov esi, dword [ebx + 0x38]
mov dword [ebp - 0x14], esi
mov esi, dword [ebp - 0x18]
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x10], edi
test edi, edi
je 0x55622f
push edx
push edx
push edi
push eax
call fcn.0052bdd0
mov edi, eax
add esp, 0x10
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x1c], edi
cmp byte [eax + 0x53], 0
je 0x556200
test edi, edi
je 0x556399
push edi
push eax
call fcn.00556b50
mov eax, dword [ebp + 0x10]
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0xc]
push eax
push edi
push ebx
call fcn.0052ba30
push eax
push edi
call fcn.0052ce20
push 0x34
lea eax, [ebp - 0x60]
push 0
push eax
call fcn.0060a8e0
mov ecx, dword [ebp - 0x28]
lea edx, [ebp - 0x60]
add esp, 0x20
mov byte [ebp - 0x60], 0x35
mov dword [ebp - 0x54], edi
mov eax, dword [ebp - 0x20]
mov edi, dword [ebp + 0x10]
dec eax
test eax, eax
jle 0x5562be
dec eax
shr eax, 1
inc eax
mov dword [ebp - 4], eax
mov ecx, dword [ecx]
mov eax, dword [ebp - 0x50]
cmp dword [ebp - 0x10], 0
push 0x10
cmovne eax, ecx
cmove edx, ecx
dec dword [ebx + 0x38]
mov dword [ebp - 0x50], eax
mov eax, dword [ebx + 0x38]
push eax
push edx
push ebx
mov dword [ebp - 0x18], edx
mov dword [ebp - 0xc], eax
call fcn.00556ee0
mov eax, dword [ebp - 0x28]
push edi
push dword [eax + 0x14]
push ebx
call fcn.00554020
push dword [ebp - 0x14]
push esi
call fcn.0057f9d0
mov ecx, dword [esi + 0xc]
add esp, 0x24
mov edx, dword [ebp - 0xc]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x5562a3
push edx
push esi
push ecx
call fcn.00540e70
add esp, 0xc
jmp 0x5562ac
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi + 0x6c]
mov dword [ecx + edx*4], eax
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x18]
add ecx, 0x28
sub dword [ebp - 4], 1
mov dword [ebp - 0x28], ecx
jne 0x556245
mov eax, dword [ebp - 0x20]
push edi
test al, 1
je 0x5562db
mov ecx, dword [ebp - 0x2c]
lea eax, [eax + eax*4]
push dword [ecx + eax*4 - 0xc]
push ebx
call fcn.00554020
add esp, 0xc
jmp 0x5562e8
push 0
push 0x48
push esi
call fcn.00575db0
add esp, 0x10
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x5562fb
push eax
push dword [ebp - 0x24]
call fcn.00556b50
add esp, 8
push esi
call fcn.00544ed0
push dword [ebp - 0x14]
push esi
call fcn.00582ac0
mov eax, dword [ebp + 0x10]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebx + 0x78], 0
jne 0x55633a
cmp byte [ebx + 0x12], 0
jne 0x55633a
push str.RAISE___may_only_be_used_within_a_trigger_program
push ebx
call fcn.005530b0
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov al, byte [edi + 1]
cmp al, 2
jne 0x556352
mov eax, dword [ebx + 0x74]
mov ecx, ebx
test eax, eax
cmovne ecx, eax
mov byte [ecx + 0x15], 1
mov al, byte [edi + 1]
mov ecx, dword [edi + 8]
push 0
cmp al, 4
jne 0x556377
push ecx
push 0
push 4
push 0
push 0x44
push esi
call fcn.00575e60
mov eax, dword [ebp + 0x10]
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebx + 0x78], 0
push 0
push ecx
movsx eax, al
mov ecx, 0x713
push eax
mov eax, 1
cmovne eax, ecx
push eax
push ebx
call fcn.0055e720
add esp, 0x18
mov eax, dword [ebp + 0x10]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebp + 0x10]
push ebx
push 0
push 0x48
push esi
call fcn.00575db0
add esp, 0x10
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret