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

Disassembly:
sub esp, 0x9c
xor eax, eax
push ebx
mov ebx, dword [esp + 0xa4]
mov ecx, dword [ebx]
push ebp
push esi
push edi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], 0xffffffff
mov dword [esp + 0x4c], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x40], ecx
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
cmp dword [ebx + 0x40], eax
jne 0x1007476d
cmp byte [ecx + 0x1e], al
jne 0x1007476d
mov ecx, dword [esp + 0xb4]
cmp dword [ecx + 0xc], eax
je 0x1007476d
push ebx
mov eax, ecx
call fcn.1006cdf0
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
je 0x1007476d
mov ebp, dword [esp + 0x40]
mov edi, eax
mov esi, dword [edi + 0x40]
mov ecx, ebp
call fcn.10079db0
mov edx, dword [ebp + 8]
mov dword [esp + 0x18], eax
shl eax, 4
mov eax, dword [eax + edx]
push eax
mov eax, dword [edi]
push 0
push eax
push 0x12
mov eax, ebx
call fcn.10067580
add esp, 0x10
test eax, eax
jne 0x1007476d
lea ecx, [esp + 0x24]
push ecx
push eax
push 0x69
push ebx
mov eax, edi
call fcn.100829a0
xor edx, edx
cmp dword [edi + 0x18], edx
mov esi, eax
setne dl
push edi
push ebx
mov dword [esp + 0x84], esi
mov dword [esp + 0x7c], edx
call fcn.10069be0
add esp, 0x18
test eax, eax
jne 0x1007476d
mov eax, dword [esp + 0x24]
push eax
mov ecx, edi
mov eax, ebx
call fcn.1006ce50
add esp, 4
test eax, eax
jne 0x1007476d
mov edi, ebx
call fcn.1007c450
mov ebp, eax
test ebp, ebp
je 0x1007476d
cmp byte [ebx + 0x13], 0
jne 0x1007328b
mov byte [ebp + 0x61], 1
cmp dword [esp + 0xbc], 0
jne 0x1007329d
test esi, esi
jne 0x1007329d
xor eax, eax
jmp 0x100732a2
mov eax, 1
mov edi, dword [esp + 0x18]
push eax
mov eax, ebx
call fcn.1006bfd0
add esp, 4
cmp dword [esp + 0xc0], 0
jne 0x100732e1
mov ecx, dword [esp + 0xc4]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0xbc]
push edi
push ecx
push edx
push ebx
call fcn.100758b0
add esp, 0x10
test eax, eax
jne 0x10074663
mov esi, dword [esp + 0xb0]
mov ebx, dword [esp + 0x14]
mov eax, edi
push eax
mov edx, esi
call fcn.10072950
xor ebx, ebx
add esp, 4
mov dword [esp + 0x3c], eax
cmp dword [esp + 0xbc], ebx
je 0x100736fa
inc dword [esi + 0x48]
mov eax, dword [ebp + 0xc]
cmp dword [ebp + 0x10], eax
mov ecx, dword [esi + 0x48]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x20], eax
jg 0x10073331
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x10073359
mov eax, dword [esp + 0x20]
inc dword [ebp + 0xc]
mov ecx, dword [esp + 0x30]
lea edx, [eax + eax*4]
mov eax, dword [ebp + 0x14]
lea eax, [eax + edx*4]
mov byte [eax], 7
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
inc dword [esi + 0x48]
mov eax, dword [esi + 0x48]
mov ecx, eax
mov eax, dword [ebp + 0xc]
add eax, 2
push ebx
mov dword [esp + 0x3c], eax
push ecx
dec eax
push eax
push 7
mov eax, ebp
mov byte [esp + 0x84], 0xa
mov dword [esp + 0x88], ecx
mov byte [esp + 0x85], bl
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x90], ebx
call fcn.100535b0
mov ecx, dword [ebp + 0xc]
add esp, 0x10
cmp dword [ebp + 0x10], ecx
mov dword [esp + 0x20], ecx
jg 0x100733c4
mov edi, ebp
call fcn.10053530
test eax, eax
je 0x100733c0
mov dword [esp + 0x28], 1
jmp 0x100733ec
mov ecx, dword [esp + 0x20]
mov eax, dword [ebp + 0x14]
inc dword [ebp + 0xc]
lea edx, [ecx + ecx*4]
lea eax, [eax + edx*4]
mov byte [eax], 1
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0xbc]
lea ecx, [esp + 0x74]
push ecx
push edx
push esi
call fcn.100801e0
add esp, 0xc
test eax, eax
jne 0x1007476d
mov eax, esi
cmp dword [eax + 0x40], ebx
jne 0x1007476d
mov ecx, dword [esp + 0x40]
cmp byte [ecx + 0x1e], bl
jne 0x1007476d
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x10073435
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x10073466
mov eax, dword [ebp + 0x14]
mov ecx, 1
add dword [ebp + 0xc], ecx
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
xor ebx, ebx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x30]
mov byte [eax], 7
mov byte [eax + 3], bl
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
jmp 0x10073468
xor ebx, ebx
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x1007347b
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x100734a3
mov eax, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov ecx, dword [esp + 0x78]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 4
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x100734b6
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x100734df
mov eax, dword [ebp + 0x14]
inc dword [ebp + 0xc]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov ecx, 2
mov byte [eax], 6
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x28]
cmp eax, ecx
jle 0x100734f4
mov edx, dword [ebp + 0x14]
lea ecx, [ecx + ecx*4]
mov dword [edx + ecx*4 + 8], eax
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0xbc]
mov edx, dword [ecx]
mov esi, dword [esp + 0xb0]
mov dword [esp + 0x50], eax
mov eax, dword [edx]
mov dword [esp + 0x2c], eax
cmp dword [esp + 0x6c], ebx
jne 0x1007353a
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov edi, dword [esp + 0x38]
push ecx
push edx
mov eax, esi
call fcn.10072860
add esp, 8
xor ebx, ebx
test eax, eax
je 0x100737a8
mov edx, dword [esi + 0x44]
lea eax, [edx + 1]
mov dword [esi + 0x44], eax
mov eax, esi
mov dword [esp + 0x4c], 1
mov dword [esp + 0x34], edx
call fcn.10064680
mov dword [esp + 0x54], eax
mov eax, esi
call fcn.10064680
mov ecx, dword [esp + 0x2c]
push ebx
push ecx
push edx
mov dword [esp + 0x24], eax
push 0x29
mov eax, ebp
call fcn.100535b0
mov esi, dword [ebp + 0xc]
add esp, 0x10
cmp dword [ebp + 0x10], esi
jg 0x10073595
mov edi, ebp
call fcn.10053530
test eax, eax
je 0x10073595
mov dword [esp + 0x28], 1
jmp 0x100735c1
mov eax, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov ecx, dword [esp + 0x78]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 4
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov dword [esp + 0x28], esi
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x100735de
mov edi, ebp
call fcn.10053530
test eax, eax
je 0x100735de
mov dword [esp + 0x38], 1
jmp 0x1007360a
mov eax, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov ecx, dword [esp + 0x30]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x1a
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov dword [esp + 0x38], esi
mov edi, dword [esp + 0x54]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x7c]
push edi
push edx
push eax
push 0x1e
mov eax, ebp
call fcn.100535b0
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x44]
push ebx
push ecx
push esi
push 0x36
mov eax, ebp
call fcn.100535b0
mov edx, dword [esp + 0x38]
push edx
push edi
push esi
push 0x37
mov eax, ebp
call fcn.100535b0
mov esi, dword [ebp + 0xc]
add esp, 0x30
cmp dword [ebp + 0x10], esi
jg 0x1007365c
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x10073684
mov ecx, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov edx, dword [esp + 0x28]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov byte [eax], 1
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], edx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x38]
cmp eax, ecx
jle 0x10073699
mov edx, dword [ebp + 0x14]
lea ecx, [ecx + ecx*4]
mov dword [edx + ecx*4 + 8], eax
mov esi, dword [esp + 0x54]
mov edx, dword [esp + 0xb0]
call fcn.100646a0
mov esi, dword [esp + 0x18]
call fcn.100646a0
mov edx, dword [esp + 0x2c]
xor ebx, ebx
mov eax, dword [esp + 0x14]
test byte [eax + 0x1e], 0x10
je 0x100737b1
mov esi, dword [eax + 8]
cmp esi, ebx
jle 0x100737b1
mov eax, dword [eax + 0xc]
mov edi, dword [esp + 0x1c]
add eax, 0x17
jmp 0x100736e0
xor ecx, ecx
cmp byte [eax], bl
setne cl
add eax, 0x18
add edi, ecx
sub esi, 1
jne 0x100736e0
mov eax, dword [esp + 0x14]
jmp 0x100737b5
xor eax, eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xb8]
mov dword [esp + 0x84], esi
mov dword [esp + 0x34], 0xffffffff
cmp eax, ebx
je 0x10073759
mov eax, dword [eax]
jmp 0x1007375b
xor eax, eax
xor edi, edi
cmp eax, ebx
mov dword [esp + 0x2c], eax
jle 0x100737a8
mov dword [esp + 0x18], ebx
lea esp, [esp]
mov eax, dword [esp + 0xb8]
mov ecx, dword [eax + 0xc]
mov edx, dword [esp + 0x18]
mov ebx, dword [edx + ecx]
lea esi, [esp + 0x84]
call fcn.1005f500
test eax, eax
jne 0x1007476d
mov edx, dword [esp + 0x2c]
add dword [esp + 0x18], 0x14
inc edi
cmp edi, edx
jl 0x10073770
jmp 0x100736b6
mov edx, dword [esp + 0x2c]
jmp 0x100736b8
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0xc0]
cmp ecx, ebx
jne 0x100737fd
cmp edx, ebx
je 0x1007395f
mov eax, dword [eax + 8]
sub eax, edi
cmp edx, eax
je 0x10073950
mov edx, dword [esp + 0x2c]
mov edi, dword [esp + 0xb0]
push edx
push eax
mov eax, dword [esp + 0xbc]
push ebx
push eax
push str.table__S_has__d_columns_but__d_values_were_supplied
call fcn.1003c9b0
add esp, 0x14
jmp 0x1007476d
mov esi, dword [ecx + 4]
cmp edx, esi
je 0x10073823
mov ecx, dword [esp + 0x2c]
mov edi, dword [esp + 0xb0]
push esi
push ecx
push str._d_values_for__d_columns
call fcn.1003c9b0
add esp, 0xc
jmp 0x1007476d
xor eax, eax
cmp esi, ebx
jle 0x1007383c
or edx, 0xffffffff
lea esp, [esp]
mov esi, dword [ecx]
mov dword [esi + eax*8 + 4], edx
inc eax
cmp eax, dword [ecx + 4]
jl 0x10073830
cmp dword [ecx + 4], ebx
mov dword [esp + 0x18], ebx
jle 0x1007395f
lea esp, [esp]
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 8]
xor esi, esi
cmp eax, ebx
mov dword [esp + 0x28], eax
jle 0x100738b5
mov eax, dword [esp + 0xc0]
mov ecx, dword [eax]
mov edx, dword [esp + 0x18]
lea eax, [ecx + edx*8]
mov ecx, dword [esp + 0x14]
mov edi, dword [ecx + 0xc]
mov dword [esp + 0x38], eax
mov eax, dword [eax]
mov dword [esp + 0x20], eax
mov edx, dword [edi]
mov ecx, dword [esp + 0x20]
call fcn.1003cab0
test eax, eax
je 0x1007389d
inc esi
add edi, 0x18
cmp esi, dword [esp + 0x28]
jl 0x10073882
jmp 0x100738b5
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x14]
mov dword [edx + 4], esi
cmp esi, dword [eax + 4]
jne 0x100738b5
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x44], ecx
mov edx, dword [esp + 0x14]
cmp esi, dword [edx + 8]
mov edi, dword [esp + 0x18]
jl 0x10073902
mov eax, dword [esp + 0xc0]
mov ecx, dword [eax]
mov esi, dword [ecx + edi*8]
mov edx, str._ROWID_
mov ecx, esi
call fcn.1003cab0
test eax, eax
je 0x100738fe
mov edx, str.ROWID
mov ecx, esi
call fcn.1003cab0
test eax, eax
je 0x100738fe
mov edx, 0x100b7bfc
mov ecx, esi
call fcn.1003cab0
test eax, eax
jne 0x10073919
mov dword [esp + 0x44], edi
mov edx, dword [esp + 0xc0]
inc edi
cmp edi, dword [edx + 4]
mov dword [esp + 0x18], edi
jl 0x10073850
jmp 0x1007395f
mov eax, dword [esp + 0xc0]
mov ecx, dword [eax]
mov edx, dword [esp + 0x18]
mov eax, dword [ecx + edx*8]
mov ecx, dword [esp + 0xb4]
mov edi, dword [esp + 0xb0]
push eax
push ebx
push ecx
push str.table__S_has_no_column_named__s
call fcn.1003c9b0
add esp, 0x10
mov byte [edi + 0x12], 1
jmp 0x1007476d
cmp edx, ebx
mov eax, dword [esp + 0x14]
jle 0x1007395f
mov edx, dword [eax + 4]
mov dword [esp + 0x44], edx
mov eax, dword [esp + 0x40]
test dword [eax + 0xc], 0x1000
mov edi, dword [esp + 0xb0]
je 0x100739bf
inc dword [edi + 0x48]
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
mov ecx, dword [edi + 0x48]
mov dword [esp + 0x60], ecx
jg 0x10073997
mov edi, ebp
call fcn.10053530
mov edi, dword [esp + 0xb0]
test eax, eax
jne 0x100739bf
mov eax, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov ecx, dword [esp + 0x60]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 7
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
cmp dword [esp + 0x64], ebx
jne 0x10073a16
mov eax, dword [edi + 0x44]
push 0x27
push eax
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x1c]
push edi
call fcn.10075640
mov esi, dword [esp + 0x4c]
add esp, 0xc
lea ecx, [eax*4 + 4]
mov dword [esp + 0x20], eax
call fcn.1003ac30
mov dword [esp + 0x5c], eax
cmp eax, ebx
je 0x1007476d
mov esi, dword [esp + 0x20]
xor ecx, ecx
test esi, esi
jle 0x10073a14
inc dword [edi + 0x48]
mov edx, dword [edi + 0x48]
mov dword [eax + ecx*4], edx
inc ecx
cmp ecx, esi
jl 0x10073a06
xor ebx, ebx
cmp dword [esp + 0x4c], ebx
je 0x10073a74
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x10073a40
mov edi, ebp
call fcn.10053530
test eax, eax
je 0x10073a40
mov edx, dword [ebp + 0xc]
mov esi, 1
mov dword [esp + 0x68], edx
jmp 0x10073b09
mov eax, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov ecx, dword [esp + 0x34]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x41
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov edx, dword [ebp + 0xc]
mov byte [ebp + 0x62], bl
mov dword [esp + 0x68], edx
jmp 0x10073b09
cmp dword [esp + 0xbc], ebx
je 0x10073b14
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x10073a9b
mov edi, ebp
call fcn.10053530
test eax, eax
je 0x10073a9b
mov esi, 1
jmp 0x10073ac3
mov ecx, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov edx, dword [esp + 0x78]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov byte [eax], 4
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov dword [esp + 0x68], esi
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x10073ae1
mov edi, ebp
call fcn.10053530
test eax, eax
je 0x10073ae1
mov esi, 1
jmp 0x10073b09
mov ecx, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov edx, dword [esp + 0x30]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x1a
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov edi, dword [esp + 0xb0]
mov dword [esp + 0x58], esi
inc dword [edi + 0x48]
mov eax, dword [edi + 0x48]
mov edx, dword [esp + 0x14]
mov edx, dword [edx + 8]
mov esi, dword [esp + 0x14]
lea ecx, [eax + 1]
lea eax, [eax + edx + 1]
mov dword [edi + 0x48], eax
test byte [esi + 0x1e], 0x10
mov dword [esp + 0x28], ecx
mov dword [esp + 0x1c], ecx
je 0x10073b46
inc ecx
inc eax
mov dword [esp + 0x1c], ecx
mov dword [edi + 0x48], eax
inc ecx
mov eax, ebp
mov dword [esp + 0x20], ecx
call fcn.10053740
test byte [esp + 0x24], 1
mov dword [esp + 0x30], eax
je 0x10073e7c
mov eax, dword [esi + 8]
mov ecx, dword [edi + 0x38]
mov edx, dword [edi + 0x3c]
inc eax
cmp eax, ecx
mov dword [esp + 0x18], edx
jg 0x10073b80
lea esi, [eax + edx]
sub ecx, eax
mov dword [edi + 0x3c], esi
mov dword [edi + 0x38], ecx
jmp 0x10073b8f
mov ecx, dword [edi + 0x48]
lea edx, [ecx + 1]
add eax, ecx
mov dword [esp + 0x18], edx
mov dword [edi + 0x48], eax
mov eax, dword [esp + 0x44]
cmp eax, ebx
jge 0x10073bd0
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x10073bae
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x10073ce7
mov ecx, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov edx, dword [esp + 0x18]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov byte [eax], 7
mov dword [eax + 4], 0xffffffff
mov dword [eax + 8], edx
jmp 0x10073cd8
cmp dword [esp + 0x4c], ebx
je 0x10073beb
push edx
push eax
mov eax, dword [esp + 0x3c]
push eax
push 0x1c
mov eax, ebp
call fcn.100535b0
add esp, 0x10
jmp 0x10073c0f
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0xb8]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0xb0]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0xc]
mov eax, dword [eax + ecx*4]
call fcn.10063630
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x10073c2c
mov edi, ebp
call fcn.10053530
test eax, eax
je 0x10073c2c
mov dword [esp + 0x24], 1
jmp 0x10073c58
mov edx, dword [ebp + 0x14]
inc dword [ebp + 0xc]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov ecx, dword [esp + 0x18]
mov byte [eax], 0x4a
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov dword [esp + 0x24], esi
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x10073c6b
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x10073c97
mov eax, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov ecx, dword [esp + 0x18]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 7
mov byte [eax + 3], bl
mov dword [eax + 4], 0xffffffff
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x24]
cmp eax, ecx
jle 0x10073cac
lea edx, [ecx + ecx*4]
mov ecx, dword [ebp + 0x14]
mov dword [ecx + edx*4 + 8], eax
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x10073cbf
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x10073ce7
mov eax, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov ecx, dword [esp + 0x18]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x15
mov dword [eax + 4], ecx
mov dword [eax + 8], ebx
mov byte [eax + 3], bl
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov edx, dword [esp + 0x14]
cmp dword [edx + 8], ebx
jle 0x10073dfa
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0xc0]
or eax, 0xffffffff
sub eax, ecx
lea esi, [ecx + 1]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x38], eax
nop
cmp edi, ebx
jne 0x10073d1c
mov eax, dword [esp + 0x38]
add eax, esi
jmp 0x10073d43
mov edx, dword [edi + 4]
xor eax, eax
cmp edx, ebx
jle 0x10073d43
mov ecx, dword [edi]
add ecx, 4
mov edi, dword [esp + 0x38]
add edi, esi
cmp dword [ecx], edi
je 0x10073d3c
inc eax
add ecx, 8
cmp eax, edx
jl 0x10073d2a
mov edi, dword [esp + 0xc0]
mov ecx, dword [esp + 0x4c]
cmp ecx, ebx
jne 0x10073d54
cmp dword [esp + 0xb8], ebx
je 0x10073d5d
cmp edi, ebx
je 0x10073da1
cmp eax, dword [edi + 4]
jl 0x10073da1
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0xc]
mov eax, dword [esp + 0x54]
mov eax, dword [edx + eax + 4]
mov ecx, dword [esp + 0xb0]
push esi
push eax
push ecx
call fcn.10062520
add esp, 0xc
cmp eax, esi
je 0x10073de1
mov edx, dword [esp + 0xb0]
mov ecx, dword [edx + 0xc]
cmp ecx, ebx
je 0x10073de1
push ebx
push esi
push eax
push 0xf
mov eax, ecx
call fcn.100535b0
add esp, 0x10
jmp 0x10073de1
cmp ecx, ebx
je 0x10073dba
push esi
push eax
mov eax, dword [esp + 0x3c]
push eax
push 0x1c
mov eax, ebp
call fcn.100535b0
add esp, 0x10
jmp 0x10073de1
mov edx, dword [esp + 0xb8]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*4]
mov eax, dword [esp + 0xb0]
mov ebx, esi
call fcn.10063660
mov edi, dword [esp + 0xc0]
xor ebx, ebx
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x14]
add dword [esp + 0x54], 0x18
inc esi
add ecx, esi
cmp ecx, dword [edx + 8]
jl 0x10073d10
cmp dword [esp + 0x64], ebx
jne 0x10073e23
mov esi, dword [esp + 0x14]
mov eax, dword [esi + 8]
mov ecx, dword [esp + 0x18]
push ebx
push eax
inc ecx
push ecx
push 0x1d
mov eax, ebp
call fcn.100535b0
push ebp
mov eax, esi
call fcn.100727a0
add esp, 0x14
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x18]
sub ecx, dword [edi + 8]
mov eax, dword [esp + 0xc4]
mov esi, dword [esp + 0xb0]
push edx
mov edx, dword [esp + 0x70]
push eax
dec ecx
push ecx
push edi
push 1
push ebx
push 0x69
push edx
push esi
call fcn.10083140
mov edi, dword [edi + 8]
mov eax, dword [esp + 0x3c]
add esp, 0x24
inc edi
push eax
mov eax, edi
call fcn.10062170
add esp, 4
cmp edi, dword [esi + 0x38]
jle 0x10073e7c
mov ecx, dword [esp + 0x18]
mov eax, esi
mov dword [eax + 0x38], edi
mov dword [eax + 0x3c], ecx
cmp dword [esp + 0x64], ebx
jne 0x10074408
mov edx, dword [esp + 0x14]
test byte [edx + 0x1e], 0x10
je 0x10073ecb
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x10073ea3
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x10073ecb
mov ecx, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov edx, dword [esp + 0x28]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0xa
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], edx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov eax, dword [esp + 0x44]
cmp eax, ebx
jl 0x1007406d
cmp dword [esp + 0x4c], ebx
je 0x10073f27
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x34]
push ecx
push eax
push edx
push 0x1c
mov eax, ebp
call fcn.100535b0
add esp, 0x10
mov eax, dword [esp + 0x14]
test byte [eax + 0x1e], 0x10
jne 0x10074013
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x10073fbd
mov edi, ebp
call fcn.10053530
test eax, eax
je 0x10073fbd
mov esi, 1
jmp 0x10073fe5
cmp dword [esp + 0xbc], ebx
je 0x10073f41
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x50]
push ebx
push ecx
add edx, eax
push edx
push 0xf
jmp 0x10073eea
mov ecx, dword [esp + 0xb8]
mov eax, dword [esp + 0x44]
mov edx, dword [ecx + 0xc]
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0xb0]
lea eax, [eax + eax*4]
mov eax, dword [edx + eax*4]
call fcn.10063630
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp]
dec eax
cmp byte [ecx + 0x1e], bl
je 0x10073f78
mov eax, 0x100adcb0
jmp 0x10073f89
lea edx, [eax + eax*4]
mov eax, dword [ebp + 0x14]
lea eax, [eax + edx*4]
cmp eax, ebx
je 0x10073ef4
cmp byte [eax], 0xa
jne 0x10073ef4
mov ecx, dword [esp + 0x14]
test byte [ecx + 0x1e], 0x10
jne 0x10073ef4
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x1c]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x3c]
mov byte [eax], 0x36
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
jmp 0x100740cf
mov edx, dword [ebp + 0x14]
inc dword [ebp + 0xc]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov ecx, dword [esp + 0x1c]
mov byte [eax], 0x4a
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x48]
push edx
push eax
push ecx
push 0x36
mov eax, ebp
call fcn.100535b0
mov eax, dword [ebp + 0xc]
add esp, 0x10
cmp eax, esi
jle 0x1007402c
mov ecx, dword [ebp + 0x14]
lea edx, [esi + esi*4]
mov dword [ecx + edx*4 + 8], eax
jmp 0x1007402c
mov edx, dword [ebp + 0xc]
mov eax, dword [esp + 0x1c]
push ebx
add edx, 2
push edx
push eax
push 0x49
mov eax, ebp
call fcn.100535b0
add esp, 0x10
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x10074043
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x100740d7
mov edx, dword [ebp + 0x14]
inc dword [ebp + 0xc]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov ecx, dword [esp + 0x1c]
mov byte [eax], 0x15
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
jmp 0x100740d7
mov edx, dword [esp + 0x14]
test byte [edx + 0x1e], 0x10
je 0x100740b4
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x1007408a
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x100740d7
mov ecx, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov edx, dword [esp + 0x1c]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0xa
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], edx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
jmp 0x100740d7
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x48]
push eax
push ecx
push edx
push 0x36
mov eax, ebp
call fcn.100535b0
add esp, 0x10
mov dword [esp + 0x70], 1
mov eax, dword [esp + 0x3c]
cmp eax, ebx
jle 0x100740fa
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0xb0]
push ebx
push ecx
push eax
mov eax, dword [edx + 0xc]
push 0x70
call fcn.100535b0
add esp, 0x10
mov eax, dword [esp + 0x14]
cmp dword [eax + 8], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], ebx
jle 0x100741f4
mov esi, dword [esp + 0x20]
mov dword [esp + 0x3c], ebx
jmp 0x10074120
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
cmp edi, dword [eax + 4]
jne 0x10074172
mov eax, dword [ebp + 0xc]
cmp dword [ebp + 0x10], eax
mov dword [esp + 0x24], eax
jg 0x10074148
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x100741d8
mov edx, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov eax, dword [esp + 0x24]
lea ecx, [eax + eax*4]
lea eax, [edx + ecx*4]
mov byte [eax], 0xa
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], esi
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
jmp 0x100741d8
mov ecx, dword [esp + 0xc0]
cmp ecx, ebx
jne 0x10074267
mov eax, dword [eax + 0xc]
mov edx, dword [esp + 0x3c]
cmp byte [eax + edx + 0x17], bl
je 0x1007425f
inc dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0xc]
mov ecx, dword [esp + 0x3c]
mov eax, dword [eax + ecx + 4]
mov edx, dword [esp + 0xb0]
push esi
push eax
push edx
call fcn.10062520
add esp, 0xc
cmp eax, esi
je 0x100741d8
mov ecx, dword [esp + 0xb0]
mov ecx, dword [ecx + 0xc]
cmp ecx, ebx
je 0x100741d8
push ebx
push esi
push eax
mov eax, ecx
push 0xf
call fcn.100535b0
add esp, 0x10
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
add dword [esp + 0x3c], 0x18
inc eax
inc esi
cmp eax, dword [edx + 8]
mov dword [esp + 0x18], eax
jl 0x10074120
mov esi, dword [esp + 0x14]
test byte [esi + 0x1e], 0x10
je 0x10074384
mov eax, dword [esi + 0x30]
mov dword [esp + 0x50], eax
cmp eax, ebx
je 0x10074220
mov ecx, dword [esp + 0x40]
cmp dword [eax], ecx
je 0x1007421c
mov eax, dword [eax + 0x10]
cmp eax, ebx
jne 0x10074211
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0xb0]
push esi
call fcn.100865f0
mov ecx, dword [esi + 8]
mov esi, dword [ebp + 0xc]
add ecx, 2
add esp, 4
cmp dword [ebp + 0x10], esi
mov dword [esp + 0x24], ecx
jg 0x100742ef
mov edi, ebp
call fcn.10053530
test eax, eax
je 0x100742eb
mov esi, 1
jmp 0x1007431c
mov eax, edi
sub eax, dword [esp + 0x1c]
jmp 0x10074288
mov edx, dword [ecx + 4]
xor eax, eax
cmp edx, ebx
jle 0x10074290
mov ecx, dword [ecx]
add ecx, 4
cmp dword [ecx], edi
je 0x10074281
inc eax
add ecx, 8
cmp eax, edx
jl 0x10074275
mov ecx, dword [esp + 0xc0]
cmp eax, ebx
jl 0x10074196
cmp dword [esp + 0x2c], ebx
je 0x10074196
cmp ecx, ebx
je 0x100742a7
cmp eax, dword [ecx + 4]
jge 0x10074196
cmp dword [esp + 0x4c], ebx
je 0x100742bd
push esi
push eax
mov eax, dword [esp + 0x3c]
push eax
push 0x1c
mov eax, ebp
jmp 0x100741d0
cmp dword [esp + 0xbc], ebx
je 0x100742d6
mov ecx, dword [esp + 0x50]
push ebx
add eax, ecx
push esi
push eax
mov eax, ebp
jmp 0x100741ce
lea edx, [eax + eax*4]
mov eax, dword [esp + 0xb8]
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx + edx*4]
jmp 0x100741a5
mov ecx, dword [esp + 0x24]
mov edi, dword [ebp + 0x14]
mov edx, 1
add dword [ebp + 0xc], edx
lea eax, [esi + esi*4]
lea eax, [edi + eax*4]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x28]
mov byte [eax], 0x85
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov ecx, dword [ebp + 0x14]
mov edi, dword [ebp]
mov eax, esi
cmp ecx, ebx
je 0x10074365
cmp byte [edi + 0x1e], bl
jne 0x10074365
cmp esi, ebx
jge 0x10074335
mov eax, dword [ebp + 0xc]
dec eax
lea edx, [eax + eax*4]
movsx eax, byte [ecx + edx*4 + 1]
lea esi, [ecx + edx*4]
mov ecx, dword [esi + 0x10]
call fcn.10053a00
mov eax, dword [esp + 0x50]
mov dword [esi + 0x10], ebx
cmp eax, ebx
jne 0x1007435b
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x10074365
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xf6
inc dword [eax + 0xc]
mov ecx, dword [esp + 0xb0]
mov eax, dword [ecx + 0x1a8]
cmp eax, ebx
jne 0x10074378
mov eax, ecx
mov byte [eax + 0x159], 1
jmp 0x10074408
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0xc4]
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x48]
lea eax, [esp + 0x24]
push eax
xor eax, eax
cmp dword [esp + 0x48], ebx
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x20]
setge al
push ebx
push eax
mov eax, dword [esp + 0xc4]
push ecx
push esi
push edi
push edx
push eax
call fcn.10074810
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0xd8]
push esi
push ebx
push ecx
push edx
call fcn.100715d0
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0x94]
xor eax, eax
cmp dword [esp + 0x5c], ebx
sete al
push eax
mov eax, dword [esp + 0x50]
push ecx
mov ecx, dword [esp + 0xf0]
push ebx
push edx
push esi
push edi
push eax
push ecx
call fcn.100753e0
add esp, 0x58
mov edx, dword [esp + 0x40]
test dword [edx + 0xc], 0x1000
je 0x10074455
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x10074428
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x10074455
mov edx, dword [ebp + 0x14]
lea eax, [esi + esi*4]
lea eax, [edx + eax*4]
mov edx, dword [esp + 0x60]
mov ecx, 1
add dword [ebp + 0xc], ecx
mov byte [eax], 0x14
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov ecx, dword [esp + 0x6c]
cmp ecx, ebx
je 0x10074490
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0xc4]
push eax
mov eax, dword [esp + 0x24]
push edx
mov edx, dword [esp + 0x1c]
sub eax, dword [edx + 8]
sub eax, 2
push eax
mov eax, dword [esp + 0xbc]
push edx
push 2
push ebx
push 0x69
push ecx
push eax
call fcn.10083140
add esp, 0x24
mov eax, dword [ebp + 0x20]
cmp eax, ebx
je 0x100744a9
mov ecx, dword [esp + 0x30]
lea edx, [ecx*4 + 4]
mov ecx, dword [ebp + 0xc]
sub eax, edx
mov dword [eax], ecx
cmp dword [esp + 0x4c], ebx
je 0x10074548
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x100744c6
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x100744f2
mov eax, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov ecx, dword [esp + 0x34]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x68]
mov byte [eax], 0x43
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x58]
cmp eax, ecx
jle 0x10074507
mov edx, dword [ebp + 0x14]
lea ecx, [ecx + ecx*4]
mov dword [edx + ecx*4 + 8], eax
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x1007451e
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x100745a1
mov ecx, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov edx, dword [esp + 0x34]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x2b
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
jmp 0x100745a1
cmp dword [esp + 0xbc], ebx
je 0x100745a1
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x10074564
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x1007458c
mov ecx, dword [ebp + 0x14]
inc dword [ebp + 0xc]
mov edx, dword [esp + 0x68]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov byte [eax], 1
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], edx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov byte [ebp + 0x62], bl
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x58]
cmp eax, ecx
jle 0x100745a1
mov edx, dword [ebp + 0x14]
lea ecx, [ecx + ecx*4]
mov dword [edx + ecx*4 + 8], eax
mov eax, dword [esp + 0x14]
test byte [eax + 0x1e], 0x10
jne 0x1007465c
cmp dword [esp + 0x64], 0
jne 0x1007465c
mov ebx, dword [ebp + 0xc]
cmp dword [ebp + 0x10], ebx
jg 0x100745cd
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x100745f9
mov edx, dword [ebp + 0x14]
inc dword [ebp + 0xc]
lea ecx, [ebx + ebx*4]
lea eax, [edx + ecx*4]
mov edx, dword [esp + 0x48]
xor ecx, ecx
mov byte [eax], 0x2b
mov byte [eax + 3], cl
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov byte [eax + 1], cl
mov byte [ebp + 0x62], cl
jmp 0x100745fb
xor ecx, ecx
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x20], eax
cmp eax, ecx
je 0x1007465c
mov ebx, dword [esp + 0x48]
inc ebx
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x10074622
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x1007464a
mov edx, dword [ebp + 0x14]
inc dword [ebp + 0xc]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
xor ecx, ecx
mov byte [eax], 0x2b
mov byte [eax + 3], cl
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov byte [eax + 1], cl
mov byte [ebp + 0x62], cl
jmp 0x1007464c
xor ecx, ecx
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x20]
inc ebx
mov dword [esp + 0x20], eax
cmp eax, ecx
jne 0x1007460f
mov ebx, dword [esp + 0xb0]
cmp byte [ebx + 0x13], 0
jne 0x1007467b
cmp dword [ebx + 0x1ac], 0
jne 0x1007467b
push ebx
call fcn.10072d60
add esp, 4
mov ecx, dword [esp + 0x40]
test dword [ecx + 0xc], 0x1000
je 0x1007476d
cmp byte [ebx + 0x13], 0
jne 0x1007476d
cmp dword [ebx + 0x1ac], 0
jne 0x1007476d
mov esi, dword [ebp + 0xc]
cmp dword [ebp + 0x10], esi
jg 0x100746b6
mov edi, ebp
call fcn.10053530
test eax, eax
jne 0x100746e6
mov eax, dword [ebp + 0x14]
mov ecx, 1
add dword [ebp + 0xc], ecx
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x60]
mov dword [eax + 8], ecx
xor ecx, ecx
mov byte [eax], 0x10
mov byte [eax + 3], 0
mov dword [eax + 4], edx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov byte [eax + 1], cl
mov byte [ebp + 0x62], cl
push 1
mov edi, ebp
call fcn.10054930
mov eax, dword [ebp]
add esp, 4
cmp byte [eax + 0x1e], 0
jne 0x1007476d
mov ebp, dword [ebp + 0x28]
mov eax, dword [ebp + 0x10]
xor ebx, ebx
cmp eax, ebx
je 0x1007470c
mov eax, dword [eax + 0x48]
jmp 0x10074711
mov eax, 0x3b9aca00
xor esi, esi
cmp eax, ebx
jl 0x10074725
cmp byte [esi + str.rows_inserted], 0
je 0x10074725
inc esi
cmp esi, eax
jle 0x10074717
xor ecx, ecx
mov edi, 0x202
push ebp
cmp ecx, fcn.1003a9f0
jne 0x10074747
call fcn.10052570
mov eax, str.rows_inserted
mov dword [ebp + 0x14], eax
mov dword [ebp + 0x24], eax
jmp 0x10074758
call fcn.10052570
mov dword [ebp + 0x14], str.rows_inserted
mov edi, 0xa02
mov dword [ebp + 0x20], ebx
add esp, 4
mov dword [ebp + 0x18], esi
mov word [ebp + 0x1c], di
mov byte [ebp + 0x1f], 1
mov byte [ebp + 0x1e], 3
mov edx, dword [esp + 0xb4]
mov esi, dword [esp + 0x40]
push edx
call fcn.1006b890
mov eax, dword [esp + 0xbc]
add esp, 4
push eax
mov edi, esi
call fcn.10060b00
mov edi, dword [esp + 0xc0]
add esp, 4
test edi, edi
je 0x100747af
push edi
push esi
call fcn.1007a550
push edi
push esi
call fcn.1003a9f0
add esp, 0x10
mov ebp, dword [esp + 0xc0]
test ebp, ebp
je 0x100747eb
xor ebx, ebx
cmp dword [ebp + 4], ebx
jle 0x100747d7
mov ecx, dword [ebp]
mov edx, dword [ecx + ebx*8]
push edx
push esi
call fcn.1003a9f0
inc ebx
add esp, 8
cmp ebx, dword [ebp + 4]
jl 0x100747c1
mov eax, dword [ebp]
push eax
push esi
call fcn.1003a9f0
push ebp
push esi
call fcn.1003a9f0
add esp, 0x10
mov ecx, dword [esp + 0x5c]
push ecx
push esi
call fcn.1003a9f0
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x9c
ret