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

Disassembly:
sub esp, 0x94
push ebx
xor ebx, ebx
push ebp
or eax, 0xffffffff
push esi
mov esi, dword [esp + 0xa4]
cmp dword [esi + 0x40], ebx
mov ebp, dword [esi]
mov dword [esp + 0x28], eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x4c], ebp
jne 0x5543e8
cmp byte [ebp + 0x1e], bl
jne 0x5543e8
cmp dword [eax + 0xc], ebx
je 0x5543e8
push edi
push eax
push esi
call fcn.0054d350
mov edi, eax
add esp, 8
cmp edi, ebx
mov dword [esp + 0x18], edi
je 0x5543e7
mov eax, dword [edi + 0x4c]
push eax
push ebp
call fcn.00520930
mov edx, dword [ebp + 8]
lea ecx, [eax + eax*2]
mov dword [esp + 0x54], eax
mov eax, dword [edx + ecx*8]
push eax
mov eax, dword [edi]
push ebx
push eax
push 0x12
push esi
call fcn.00544190
add esp, 0x1c
test eax, eax
jne 0x5543e7
push ebx
push 0x65
push edi
push esi
call fcn.00541e20
xor ecx, ecx
cmp dword [edi + 0x18], ebx
push eax
setne cl
push edi
push esi
mov dword [esp + 0x58], eax
mov dword [esp + 0x74], ecx
call fcn.0054d3b0
add esp, 0x1c
test eax, eax
jne 0x5543e7
push edi
push esi
call fcn.00537170
add esp, 8
test eax, eax
jne 0x5543e7
push esi
call fcn.00546d50
mov ebp, eax
add esp, 4
cmp ebp, ebx
je 0x5543e7
cmp byte [esi + 0x13], bl
jne 0x5537ed
push ebp
call fcn.00524500
add esp, 4
cmp dword [esp + 0xb4], ebx
jne 0x553800
cmp dword [esp + 0x3c], ebx
jne 0x553800
xor eax, eax
jmp 0x553805
mov eax, 1
mov edx, dword [esp + 0x4c]
push edx
push eax
push esi
call fcn.00536b10
add esp, 0xc
cmp dword [esp + 0x3c], ebx
je 0x553827
mov eax, dword [esi + 0x44]
mov dword [esp + 0x48], eax
add eax, 1
mov dword [esi + 0x44], eax
cmp dword [esp + 0xb8], ebx
jne 0x553856
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0xbc]
push eax
mov eax, dword [esp + 0xb8]
push ecx
push edi
push esi
call fcn.005531d0
add esp, 0x10
test eax, eax
jne 0x5543e7
mov edx, dword [esp + 0x4c]
push edi
mov ecx, esi
call fcn.00552720
add esp, 4
cmp dword [esp + 0xb4], ebx
mov dword [esp + 0x40], eax
je 0x553a10
push ebx
push ebx
push 0x5b
push ebp
call fcn.00522880
push ebp
mov dword [esp + 0x3c], eax
call fcn.004f5580
push ebp
mov dword [esp + 0x38], eax
call fcn.005228a0
push eax
lea edx, [esp + 0xb0]
push 0xa
push edx
mov dword [esp + 0x38], eax
call fcn.00544950
mov ecx, dword [esp + 0xd8]
push ebx
push ebx
push ebx
push ebx
lea eax, [esp + 0xc8]
push eax
push ecx
push esi
call fcn.005483f0
add esp, 0x40
test eax, eax
jne 0x5543e7
cmp dword [esi + 0x40], ebx
jne 0x5543e7
mov edx, dword [esp + 0x50]
cmp byte [edx + 0x1e], bl
jne 0x5543e7
mov eax, dword [esp + 0x9c]
push ebp
mov dword [esp + 0x64], eax
call fcn.005228a0
push eax
push 0
push 0x5b
push ebp
mov dword [esp + 0x48], eax
call fcn.00522880
mov ecx, dword [esp + 0xc8]
mov edx, dword [ecx]
mov ebx, dword [edx]
add esp, 0x14
cmp dword [esp + 0x3c], 0
mov dword [esp + 0x44], ebx
jne 0x553936
mov eax, dword [esp + 0x4c]
push eax
mov eax, dword [esp + 0x24]
push ebp
call fcn.00552690
add esp, 8
test eax, eax
je 0x5539fd
mov eax, dword [esi + 0x44]
mov dword [esp + 0x24], eax
add eax, 1
push esi
mov dword [esp + 0x3c], 1
mov dword [esi + 0x44], eax
call fcn.0054a2b0
push esi
mov edi, eax
call fcn.0054a2b0
mov ecx, dword [esp + 0x1c]
push ecx
push ebp
mov ebx, eax
call fcn.005228f0
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x70]
push edi
push edx
push eax
push 0x55
push ebp
call fcn.005227b0
mov ecx, dword [esp + 0x48]
push ebx
push ecx
push 0x19
push ebp
call fcn.00522880
mov edx, dword [esp + 0x58]
push ebx
push edi
push edx
push 0x69
push ebp
call fcn.005227b0
add esp, 0x48
push 0
push 0
push 0x18
push ebp
call fcn.00522880
push edi
push esi
call fcn.0054a350
push ebx
push esi
call fcn.0054a350
mov eax, dword [esp + 0x48]
push eax
push ebp
call fcn.00522bf0
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x4c]
push ecx
push edx
push 0x70
push ebp
call fcn.00522880
mov eax, dword [esp + 0x58]
push eax
push 0
push 0x5b
push ebp
call fcn.00522880
mov ecx, dword [esp + 0x7c]
add esp, 0x48
push ecx
push ebp
call fcn.005228f0
mov edi, dword [esp + 0x20]
mov ebx, dword [esp + 0x4c]
add esp, 8
jmp 0x553abb
mov edx, dword [esp + 0x28]
push edx
push ebp
call fcn.00522bf0
add esp, 8
jmp 0x553abb
xor eax, eax
cmp dword [esp + 0xb0], ebx
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x70], esi
mov dword [esp + 0x24], 0xffffffff
je 0x553a65
mov eax, dword [esp + 0xb0]
mov ebx, dword [eax]
jmp 0x553a67
xor ebx, ebx
test ebx, ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x10], 0
jle 0x553abb
mov dword [esp + 0x18], 0
nop
mov ecx, dword [esp + 0xb0]
mov edx, dword [ecx + 0xc]
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + edx]
push ecx
lea edx, [esp + 0x74]
push edx
call fcn.0054baf0
add esp, 8
test eax, eax
jne 0x5543e7
mov eax, dword [esp + 0x10]
add dword [esp + 0x18], 0xc
add eax, 1
cmp eax, ebx
mov dword [esp + 0x10], eax
jl 0x553a80
cmp byte [edi + 0x39], 0
je 0x553ae7
mov ecx, dword [edi + 4]
test ecx, ecx
jle 0x553ae7
mov eax, dword [edi + 8]
add eax, 0x13
mov dword [esp + 0x28], ecx
xor ecx, ecx
cmp byte [eax], cl
setne cl
add eax, 0x14
add dword [esp + 0x1c], ecx
sub dword [esp + 0x28], 1
jne 0x553ad2
mov ecx, dword [esp + 0xb8]
test ecx, ecx
jne 0x553b29
test ebx, ebx
je 0x553c4d
mov eax, dword [edi + 4]
mov edx, eax
sub edx, dword [esp + 0x1c]
cmp ebx, edx
je 0x553c42
push ebx
push eax
mov eax, dword [esp + 0xb4]
push ecx
push eax
push str.table__S_has__d_columns_but__d_values_were_supplied
push esi
call fcn.00526230
add esp, 0x18
jmp 0x5543e7
mov edx, dword [ecx + 4]
cmp ebx, edx
je 0x553b45
push edx
push ebx
push str._d_values_for__d_columns
push esi
call fcn.00526230
add esp, 0x10
jmp 0x5543e7
xor eax, eax
test edx, edx
jle 0x553b5e
or edx, 0xffffffff
mov edi, edi
mov ebx, dword [ecx]
mov dword [ebx + eax*8 + 4], edx
add eax, 1
cmp eax, dword [ecx + 4]
jl 0x553b50
cmp dword [ecx + 4], 0
mov dword [esp + 0x10], 0
jle 0x553c4d
xor ebx, ebx
cmp dword [edi + 4], ebx
jle 0x553bd1
mov dword [esp + 0x18], ebx
jmp 0x553b80
mov ecx, dword [edi + 8]
mov edx, dword [esp + 0x18]
mov eax, dword [edx + ecx]
mov ecx, dword [esp + 0xb8]
mov edx, dword [ecx]
push eax
mov eax, dword [esp + 0x14]
mov ecx, dword [edx + eax*8]
push ecx
call fcn.00526360
add esp, 8
test eax, eax
je 0x553bb7
add dword [esp + 0x18], 0x14
add ebx, 1
cmp ebx, dword [edi + 4]
jl 0x553b80
jmp 0x553bd1
mov edx, dword [esp + 0xb8]
mov ecx, dword [edx]
mov eax, dword [esp + 0x10]
mov dword [ecx + eax*8 + 4], ebx
cmp ebx, dword [edi + 0xc]
jne 0x553bd1
mov dword [esp + 0x2c], eax
cmp ebx, dword [edi + 4]
jl 0x553bf7
mov edx, dword [esp + 0xb8]
mov eax, dword [edx]
mov ebx, dword [esp + 0x10]
mov ecx, dword [eax + ebx*8]
push ecx
call fcn.00549b40
add esp, 4
test eax, eax
je 0x553c14
mov dword [esp + 0x2c], ebx
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0xb8]
add eax, 1
cmp eax, dword [edx + 4]
mov dword [esp + 0x10], eax
jl 0x553b70
jmp 0x553c4d
mov eax, dword [esp + 0xb8]
mov ecx, dword [eax]
mov edx, dword [ecx + ebx*8]
mov eax, dword [esp + 0xac]
push edx
push 0
push eax
push str.table__S_has_no_column_named__s
push esi
call fcn.00526230
add esp, 0x14
add dword [esi + 0x40], 1
jmp 0x5543e7
test ebx, ebx
jle 0x553c4d
mov ecx, dword [edi + 0xc]
mov dword [esp + 0x2c], ecx
cmp dword [esp + 0x3c], 0
je 0x553c74
mov edx, dword [edi + 4]
push edx
push 0
push 0x62
push ebp
call fcn.00522880
mov eax, dword [esp + 0x58]
push 0
push eax
push 0x6f
push ebp
call fcn.00522880
add esp, 0x20
mov ecx, dword [esp + 0x50]
test byte [ecx + 0xc], 0x80
je 0x553c97
add dword [esi + 0x48], 1
mov eax, dword [esi + 0x48]
push eax
push 0
push 0x2f
push ebp
mov dword [esp + 0x6c], eax
call fcn.00522880
add esp, 0x10
cmp dword [esp + 0x58], 0
jne 0x553cf1
mov eax, dword [esi + 0x44]
push 9
push eax
push edi
push esi
mov dword [esp + 0x40], eax
call fcn.005530c0
mov ebx, eax
mov eax, dword [esp + 0x60]
lea edx, [ebx*4 + 4]
push edx
push eax
call fcn.00525e50
add esp, 0x18
test eax, eax
mov dword [esp + 0x54], eax
je 0x5543e7
xor ecx, ecx
test ebx, ebx
jle 0x553cf1
jmp 0x553ce0
add dword [esi + 0x48], 1
mov edx, dword [esi + 0x48]
mov dword [eax + ecx*4], edx
add ecx, 1
cmp ecx, ebx
jl 0x553ce0
cmp dword [esp + 0x38], 0
je 0x553d22
push ebp
call fcn.005228a0
mov ecx, dword [esp + 0x28]
push eax
push ecx
push 0x74
push ebp
mov dword [esp + 0x80], eax
call fcn.00522880
push ebp
call fcn.004f5580
mov dword [esp + 0x80], eax
jmp 0x553d46
cmp dword [esp + 0xb4], 0
je 0x553d49
mov edx, dword [esp + 0x20]
push edx
push 0
push 0x5b
push ebp
call fcn.00522880
mov eax, dword [esp + 0x24]
push eax
push ebp
call fcn.005228f0
add esp, 0x18
add dword [esi + 0x48], 1
mov eax, dword [esi + 0x48]
mov ecx, dword [edi + 4]
lea ebx, [eax + 1]
lea eax, [ecx + eax + 1]
mov dword [esi + 0x48], eax
cmp byte [edi + 0x39], 0
mov dword [esp + 0x28], ebx
mov dword [esp + 0x10], ebx
je 0x553d78
add ebx, 1
add eax, 1
mov dword [esp + 0x10], ebx
mov dword [esi + 0x48], eax
push ebp
call fcn.005228a0
add esp, 4
test byte [esp + 0x3c], 1
mov dword [esp + 0x18], eax
je 0x553f6e
push esi
call fcn.0054a2b0
mov ebx, eax
mov eax, dword [esp + 0x30]
add esp, 4
test eax, eax
mov dword [esp + 0x20], ebx
push ebx
jge 0x553db7
push 0xffffffffffffffff
push 0x2f
push ebp
call fcn.00522880
add esp, 0x10
jmp 0x553e17
cmp dword [esp + 0x3c], 0
je 0x553dd1
mov edx, dword [esp + 0x28]
push eax
push edx
push 3
push ebp
call fcn.005227b0
add esp, 0x14
jmp 0x553e17
mov ecx, dword [esp + 0xb4]
mov edx, dword [ecx + 0xc]
lea eax, [eax + eax*2]
mov eax, dword [edx + eax*4]
push eax
push esi
call fcn.0054a030
push ebx
push 0x42
push ebp
call fcn.00522860
push ebx
push 0xffffffffffffffff
push 0x2f
push ebp
mov dword [esp + 0x3c], eax
call fcn.00522880
mov ecx, dword [esp + 0x3c]
push ecx
push ebp
call fcn.00522bf0
push ebx
push 0x25
push ebp
call fcn.00522860
add esp, 0x3c
mov edx, dword [edi + 4]
push edx
push esi
call fcn.0054a370
xor ebx, ebx
add esp, 8
cmp dword [edi + 4], ebx
mov dword [esp + 0x1c], eax
jle 0x553ed8
mov dword [esp + 0x14], ebx
jmp 0x553e40
mov ecx, dword [esp + 0xb8]
test ecx, ecx
jne 0x553e6e
mov eax, ebx
mov ecx, dword [esp + 0x1c]
add ecx, ebx
cmp dword [esp + 0x38], 0
push ecx
je 0x553ead
mov edx, dword [esp + 0x28]
push eax
push edx
push 3
push ebp
call fcn.005227b0
add esp, 0x14
jmp 0x553ec7
mov edx, dword [ecx + 4]
xor eax, eax
test edx, edx
jle 0x553e8e
mov ecx, dword [ecx]
add ecx, 4
lea esp, [esp]
cmp dword [ecx], ebx
je 0x553e8e
add eax, 1
add ecx, 8
cmp eax, edx
jl 0x553e80
cmp eax, edx
jl 0x553e4d
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi + 8]
mov edx, dword [esp + 0x14]
add eax, ebx
push eax
mov eax, dword [ecx + edx + 4]
push eax
push esi
call fcn.0054a030
jmp 0x553ec4
lea edx, [eax + eax*2]
mov eax, dword [esp + 0xb4]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + edx*4]
push edx
push esi
call fcn.0054a070
add esp, 0xc
add dword [esp + 0x14], 0x14
add ebx, 1
cmp ebx, dword [edi + 4]
jl 0x553e40
push esi
call fcn.0054a2b0
mov ecx, dword [esp + 0x20]
mov ebx, eax
mov eax, dword [edi + 4]
push ebx
push eax
push ecx
push 0x55
push ebp
call fcn.005227b0
add esp, 0x18
cmp dword [esp + 0x58], 0
jne 0x553f06
push edi
push ebp
call fcn.00552620
add esp, 8
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x48]
push edx
push ebx
push eax
push 0x69
push ebp
call fcn.005227b0
push ebx
push esi
call fcn.0054a350
mov ecx, dword [esp + 0x3c]
push ecx
push esi
call fcn.0054a350
mov edx, dword [edi + 4]
mov eax, dword [esp + 0x40]
push edx
push eax
push esi
call fcn.0054a3e0
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0xec]
mov eax, dword [esp + 0x78]
push 0
push 0
push ecx
push edx
push 0xffffffffffffffff
push eax
push edi
push 1
push 0
push 0x65
push esi
call fcn.00542110
add esp, 0x5c
test eax, eax
jne 0x5543e7
mov ebx, dword [esp + 0x10]
cmp dword [esp + 0x58], 0
jne 0x554282
cmp byte [edi + 0x39], 0
je 0x553f91
mov ecx, dword [esp + 0x28]
push ecx
push 0
push 0x71
push ebp
call fcn.00522880
add esp, 0x10
cmp dword [esp + 0x2c], 0
jl 0x55406c
cmp dword [esp + 0x38], 0
push ebx
je 0x553ff5
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x28]
push edx
push eax
push 3
push ebp
call fcn.005227b0
add esp, 0x14
push ebx
push 0x42
push ebp
call fcn.00522860
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x4c]
push eax
push ebx
push ecx
push 0x19
push ebp
call fcn.005227b0
mov edx, dword [esp + 0x34]
push edx
push ebp
call fcn.00522bf0
push ebx
push 0x25
push ebp
call fcn.00522860
add esp, 0x34
jmp 0x5540a0
cmp dword [esp + 0xb8], 0
je 0x554017
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x64]
add ecx, edx
push ecx
push 8
push ebp
call fcn.00522880
add esp, 0x10
jmp 0x553fb9
mov ecx, dword [esp + 0xb4]
mov eax, dword [esp + 0x30]
mov edx, dword [ecx + 0xc]
lea eax, [eax + eax*2]
mov eax, dword [edx + eax*4]
push eax
push esi
call fcn.0054a030
push ebp
call fcn.004f5580
sub eax, 1
push eax
push ebp
call fcn.00522c20
add esp, 0x18
test eax, eax
je 0x553fb9
cmp byte [eax], 0x71
jne 0x553fb9
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x40]
mov byte [eax], 0x19
mov dword [eax + 4], ecx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], edx
jmp 0x554098
cmp byte [edi + 0x39], 0
je 0x554082
push ebx
push 0
push 0x71
push ebp
call fcn.00522880
add esp, 0x10
jmp 0x5540a0
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x30]
push eax
push ebx
push ecx
push 0x19
push ebp
call fcn.005227b0
add esp, 0x14
mov dword [esp + 0x64], 1
cmp dword [esp + 0x40], 0
jle 0x5540bb
mov edx, dword [esp + 0x40]
mov eax, dword [esi + 0xc]
push ebx
push edx
push 0x2c
push eax
call fcn.00522880
add esp, 0x10
xor eax, eax
cmp dword [edi + 4], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x10], eax
jle 0x554141
add ebx, 1
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], ebx
mov ecx, dword [esp + 0x10]
cmp ecx, dword [edi + 0xc]
jne 0x5540ee
push ebx
push 0
push 0x71
push ebp
call fcn.00522880
add esp, 0x10
jmp 0x554125
mov ecx, dword [esp + 0xb8]
test ecx, ecx
jne 0x55417d
mov edx, dword [edi + 8]
mov eax, dword [esp + 0x20]
cmp byte [edx + eax + 0x13], cl
je 0x554173
add dword [esp + 0x1c], 1
mov ecx, dword [edi + 8]
mov edx, dword [esp + 0x20]
mov eax, dword [ecx + edx + 4]
push ebx
push eax
push esi
call fcn.0054a030
add esp, 0xc
mov eax, dword [esp + 0x10]
add dword [esp + 0x20], 0x14
add eax, 1
add ebx, 1
cmp eax, dword [edi + 4]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ebx
jl 0x5540d5
cmp byte [edi + 0x39], 0
je 0x554221
push edi
push esi
call fcn.00534900
mov ecx, dword [edi + 0x40]
mov edx, dword [esp + 0x30]
mov eax, dword [edi + 4]
push 0xfffffffffffffff6
push ecx
push edx
add eax, 2
push eax
push 1
push 0x77
push ebp
call fcn.00524c10
jmp 0x55427f
mov eax, dword [esp + 0x10]
sub eax, dword [esp + 0x1c]
jmp 0x5541ad
mov edx, dword [ecx + 4]
xor eax, eax
test edx, edx
jle 0x5541b5
mov ecx, dword [ecx]
add ecx, 4
jmp 0x554190
mov ebx, dword [esp + 0x10]
cmp dword [ecx], ebx
je 0x5541a2
add eax, 1
add ecx, 8
cmp eax, edx
jl 0x554190
mov ecx, dword [esp + 0xb8]
mov ebx, dword [esp + 0x14]
test eax, eax
jl 0x55410f
cmp dword [esp + 0x44], 0
je 0x55410f
test ecx, ecx
je 0x5541cd
cmp eax, dword [ecx + 4]
jge 0x55410f
cmp dword [esp + 0x38], 0
push ebx
je 0x5541eb
mov ecx, dword [esp + 0x28]
push eax
push ecx
push 3
push ebp
call fcn.005227b0
add esp, 0x14
jmp 0x554125
cmp dword [esp + 0xb8], 0
je 0x55420c
mov edx, dword [esp + 0x64]
add eax, edx
push eax
push 8
push ebp
call fcn.00522880
add esp, 0x10
jmp 0x554125
mov ecx, dword [esp + 0xb4]
mov edx, dword [ecx + 0xc]
lea eax, [eax + eax*2]
mov eax, dword [edx + eax*4]
jmp 0x55411b
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0xbc]
mov ebx, dword [esp + 0x28]
xor eax, eax
cmp dword [esp + 0x2c], eax
push ecx
mov ecx, dword [esp + 0x58]
push edx
mov edx, dword [esp + 0x38]
setge al
push 0
push eax
push ecx
push ebx
push edx
push edi
push esi
call fcn.005528b0
add esp, 0x24
test byte [esp + 0x3c], 2
je 0x554260
mov eax, dword [esp + 0x48]
jmp 0x554263
or eax, 0xffffffff
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x54]
push ecx
push eax
mov eax, dword [esp + 0x38]
push 0
push 0
push edx
push ebx
push eax
push edi
push esi
call fcn.00552fa0
add esp, 0x24
mov ecx, dword [esp + 0x50]
test byte [ecx + 0xc], 0x80
je 0x55429e
mov edx, dword [esp + 0x5c]
push 1
push edx
push 0x29
push ebp
call fcn.00522880
add esp, 0x10
cmp dword [esp + 0x3c], 0
je 0x5542d5
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0xbc]
mov edx, dword [esp + 0x48]
push 0
push 0
push eax
push ecx
push 0xffffffffffffffff
push edx
push edi
push 2
push 0
push 0x65
push esi
call fcn.00542110
add esp, 0x2c
test eax, eax
jne 0x5543e7
mov eax, dword [esp + 0x18]
push eax
push ebp
call fcn.005228f0
add esp, 8
cmp dword [esp + 0x38], 0
je 0x554317
mov ecx, dword [esp + 0x68]
mov ebx, dword [esp + 0x24]
push ecx
push ebx
push 0x67
push ebp
call fcn.00522880
mov edx, dword [esp + 0x7c]
push edx
push ebp
call fcn.005228f0
push 0
push ebx
push 0x20
push ebp
call fcn.00522880
add esp, 0x28
jmp 0x55433b
cmp dword [esp + 0xb4], 0
je 0x55433b
push 0
push 0
push 0x18
push ebp
call fcn.00522880
mov eax, dword [esp + 0x44]
push eax
push ebp
call fcn.005228f0
add esp, 0x18
cmp byte [edi + 0x39], 0
jne 0x55438e
cmp dword [esp + 0x58], 0
jne 0x55438e
mov ecx, dword [esp + 0x30]
push 0
push ecx
push 0x20
push ebp
call fcn.00522880
mov ebx, dword [edi + 0x10]
add esp, 0x10
test ebx, ebx
je 0x55438e
mov edx, dword [esp + 0x30]
add edx, 1
mov dword [esp + 0x34], edx
lea esp, [esp]
mov eax, dword [esp + 0x34]
push 0
push eax
push 0x20
push ebp
call fcn.00522880
mov ebx, dword [ebx + 0x20]
add dword [esp + 0x44], 1
add esp, 0x10
test ebx, ebx
jne 0x554370
mov ecx, dword [esp + 0x40]
push ecx
mov ecx, dword [esp + 0x50]
mov edx, edi
mov eax, esi
call fcn.00552810
mov edx, dword [esp + 0x54]
add esp, 4
test byte [edx + 0xc], 0x80
je 0x5543e7
cmp byte [esi + 0x13], 0
jne 0x5543e7
cmp dword [esi + 0x188], 0
jne 0x5543e7
mov eax, dword [esp + 0x5c]
push 1
push eax
push 0x56
push ebp
call fcn.00522880
push 1
push ebp
call fcn.00523490
push 0xfffffffffffffffe
push str.rows_inserted
push 0
push 0
push ebp
call fcn.00523540
add esp, 0x2c
pop edi
mov ecx, dword [esp + 0xa8]
push ecx
call fcn.005367b0
mov edx, dword [esp + 0xb0]
push edx
call fcn.00549960
mov eax, dword [esp + 0xb8]
push eax
call fcn.00544a40
mov ecx, dword [esp + 0xc0]
push ecx
call fcn.005366c0
mov edx, dword [esp + 0x60]
push edx
call fcn.005223e0
add esp, 0x14
pop esi
pop ebp
pop ebx
add esp, 0x94
ret