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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xec
or dword [esp + 0x70], 0xffffffff
xor eax, eax
push ebx
push esi
mov esi, ecx
mov dword [esp + 0x58], edx
xor ecx, ecx
mov dword [esp + 0x84], esi
inc ecx
mov dword [esp + 0xc8], eax
xorps xmm0, xmm0
mov dword [esp + 0xa8], eax
mov edx, dword [esi]
push edi
mov dword [esp + 0x70], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0xa4], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0xb8], ecx
mov dword [esp + 0xd0], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0x50], eax
movlpd qword [esp + 0xc0], xmm0
mov dword [esp + 0x6c], edx
cmp dword [esi + 0x24], eax
jne 0x4a524b
mov edx, dword [esp + 0x5c]
mov ecx, esi
call fcn.0048cc7d
mov edi, eax
mov dword [esp + 0x14], edi
test edi, edi
je 0x4a524b
mov edx, dword [edi + 0x3c]
mov ecx, dword [esi]
call fcn.00499367
mov ebx, dword [ebp + 8]
mov edx, edi
mov dword [esp + 0x60], eax
mov ecx, esi
lea eax, [esp + 0xc8]
push eax
push ebx
push 0x81
call fcn.004a2d5d
mov dword [esp + 0x64], eax
xor ecx, ecx
mov al, byte [edi + 0x2b]
inc ecx
mov byte [esp + 0x1f], al
add esp, 0xc
mov eax, dword [esp + 0x5c]
cmp dword [eax], ecx
jle 0x4a3cd6
mov ebx, dword [ebx]
mov dword [esp + 0x2c], ebx
jmp 0x4a3cdb
and dword [esp + 0x2c], 0
mov edx, edi
mov ecx, esi
call fcn.00489b00
test eax, eax
jne 0x4a524b
push dword [esp + 0xc8]
mov edx, edi
mov ecx, esi
call fcn.0048cd5d
pop ecx
test eax, eax
jne 0x4a524b
mov ebx, dword [esi + 0x28]
mov edx, ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0xa0], edx
lea eax, [ebx + 1]
mov dword [esi + 0x28], eax
test byte [edi + 0x1c], 0x80
mov dword [esp + 0x90], eax
jne 0x4a3d2f
and dword [esp + 0x34], 0
jmp 0x4a3d41
mov ecx, edi
call fcn.004877d3
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x90]
xor ecx, ecx
mov dword [esp + 0x9c], ecx
mov ecx, dword [edi + 8]
test ecx, ecx
je 0x4a3d87
mov edi, dword [esp + 0x9c]
mov edx, eax
cmp dword [esp + 0x34], ecx
mov eax, edx
cmovne eax, ebx
inc edx
mov dword [esi + 0x28], edx
inc edi
mov ecx, dword [ecx + 0x14]
mov ebx, eax
test ecx, ecx
jne 0x4a3d5a
mov edx, dword [esp + 0xa0]
mov dword [esp + 0x9c], edi
mov edi, dword [esp + 0x14]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x4a3da2
mov ebx, dword [eax + 0x28]
mov eax, dword [eax + 0x2c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x90], eax
mov dword [esi + 0x28], edx
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x6c]
push 0
mov dword [eax + 0x34], ebx
movsx eax, word [edi + 0x22]
mov ebx, dword [esp + 0xa0]
add eax, ebx
lea eax, [eax*4 + 6]
add eax, ebx
push eax
call fcn.0045101b
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x20], ecx
test ecx, ecx
je 0x4a524b
movsx eax, word [edi + 0x22]
lea eax, [ecx + eax*4]
mov dword [esp + 0x74], eax
lea ecx, [ebx + 1]
lea ecx, [eax + ecx*4]
lea eax, [ebx + 1]
mov dword [esp + 0x80], ecx
push eax
xor eax, eax
inc eax
push eax
push ecx
call fcn.00719250
mov eax, dword [esp + 0x8c]
add esp, 0xc
xor ecx, ecx
mov byte [eax + ebx + 1], 0
xor eax, eax
cmp ax, word [edi + 0x22]
jge 0x4a3e2b
mov edx, dword [esp + 0x20]
or dword [edx + ecx*4], 0xffffffff
inc ecx
movsx eax, word [edi + 0x22]
cmp ecx, eax
jl 0x4a3e1e
mov eax, dword [esp + 0x5c]
xorps xmm0, xmm0
and dword [esp + 0xec], 0
mov ecx, esi
and dword [esp + 0xf4], 0
mov dword [esp + 0xdc], eax
mov eax, dword [ebp + 0x1c]
movlpd qword [esp + 0xe4], xmm0
mov dword [esp + 0xd8], esi
mov dword [esp + 0xe0], eax
mov dword [esp + 0xf0], 0x200
call fcn.0049bbde
mov dword [esp + 0x18], eax
test eax, eax
je 0x4a523e
mov edx, dword [ebp + 8]
xor ebx, ebx
xor al, al
mov dword [esp + 0x48], ebx
xor cl, cl
mov byte [esp + 0x2b], al
mov byte [esp + 0x12], cl
cmp dword [edx], ebx
jle 0x4a4088
lea edi, [edx + 8]
mov dword [esp + 0x40], edi
mov ecx, dword [edi + 4]
call fcn.00453d7a
cmp dword [esp + 0x2c], 0
mov dl, al
mov byte [esp + 0x4f], dl
jne 0x4a3ed4
mov edx, dword [edi]
lea ecx, [esp + 0xd8]
call fcn.0047ba95
test eax, eax
jne 0x4a523e
mov dl, byte [esp + 0x4f]
mov ecx, dword [esp + 0x14]
xor edi, edi
movsx eax, word [ecx + 0x22]
mov dword [esp + 0x94], eax
test eax, eax
jle 0x4a3f33
mov ebx, dword [ecx + 4]
mov eax, ebx
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x24], eax
cmp byte [eax + 0xa], dl
jne 0x4a3f23
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx + 4]
mov ecx, dword [eax]
call fcn.00453ce5
test eax, eax
je 0x4a3f94
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x94]
mov dl, byte [esp + 0x4f]
inc edi
add eax, 0x10
mov dword [esp + 0x24], eax
cmp edi, ecx
jl 0x4a3ef9
mov ebx, dword [esp + 0x48]
mov al, byte [esp + 0x12]
mov ecx, dword [esp + 0x70]
mov byte [esp + 0x12], al
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x70], ecx
movsx eax, word [eax + 0x22]
cmp edi, eax
jl 0x4a3ff4
cmp dword [esp + 0x34], 0
jne 0x4a40ce
mov eax, dword [esp + 0x40]
mov ecx, dword [eax + 4]
call fcn.0047dd7b
test eax, eax
je 0x4a40ce
xor eax, eax
mov dword [esp + 0x7c], ebx
or edi, 0xffffffff
inc eax
mov byte [esp + 0x12], al
mov eax, dword [esp + 0x40]
mov eax, dword [eax]
mov dword [esp + 0x70], eax
jmp 0x4a3ff8
mov eax, dword [esp + 0x14]
movsx eax, word [eax + 0x20]
cmp edi, eax
jne 0x4a3fbb
mov eax, dword [esp + 0x40]
xor ecx, ecx
mov ebx, dword [esp + 0x48]
inc ecx
mov byte [esp + 0x12], cl
mov dword [esp + 0x7c], ebx
mov eax, dword [eax]
mov dword [esp + 0x70], eax
jmp 0x4a3fe8
cmp dword [esp + 0x34], 0
je 0x4a3fd5
mov eax, edi
xor ecx, ecx
add eax, eax
inc ecx
test byte [ebx + eax*8 + 0xe], cl
je 0x4a3fd5
mov byte [esp + 0x2b], cl
jmp 0x4a3fe4
mov eax, edi
add eax, eax
test byte [ebx + eax*8 + 0xe], 0x60
jne 0x4a40b6
mov ebx, dword [esp + 0x48]
mov eax, dword [esp + 0x20]
mov dword [eax + edi*4], ebx
jmp 0x4a3f33
test edi, edi
jns 0x4a3fff
mov edx, str.ROWID
jmp 0x4a4025
mov eax, dword [esp + 0x14]
mov ecx, edi
add ecx, ecx
mov eax, dword [eax + 4]
mov edx, dword [eax + ecx*8]
mov eax, dword [esp + 0x70]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x7c], eax
mov al, byte [esp + 0x12]
mov byte [esp + 0x12], al
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x60]
add ecx, ecx
mov eax, dword [eax + 0x10]
push dword [eax + ecx*8]
mov eax, dword [esp + 0x18]
mov ecx, esi
push edx
push dword [eax]
push 0x17
pop edx
call fcn.00486715
xor ecx, ecx
add esp, 0xc
inc ecx
cmp eax, ecx
je 0x4a523e
cmp eax, 2
jne 0x4a4061
mov eax, dword [esp + 0x20]
or dword [eax + edi*4], 0xffffffff
mov eax, dword [ebp + 8]
inc ebx
mov edi, dword [esp + 0x40]
add edi, 0x14
mov dword [esp + 0x48], ebx
mov dword [esp + 0x40], edi
cmp ebx, dword [eax]
jl 0x4a3ea5
mov edi, dword [esp + 0x14]
mov cl, byte [esp + 0x12]
mov al, byte [esp + 0x2b]
test byte [edi + 0x1c], 0x60
lea edx, [ecx + eax]
mov byte [esp + 0x40], dl
je 0x4a416b
movzx eax, word [edi + 0x22]
mov esi, dword [esp + 0x14]
xor edx, edx
xor ebx, ebx
xor edi, edi
mov dword [esp + 0x24], edx
cmp bx, ax
jge 0x4a415c
jmp 0x4a40f5
add edi, edi
push dword [ebx + edi*8]
push str.cannot_UPDATE_generated_column___s_
push esi
call fcn.00453b99
add esp, 0xc
jmp 0x4a523e
mov ecx, dword [ebp + 8]
imul eax, ebx, 0x14
push dword [eax + ecx + 0xc]
push str.no_such_column:__s
push esi
call fcn.00453b99
xor eax, eax
add esp, 0xc
inc eax
mov byte [esi + 0x11], al
jmp 0x4a523e
mov cl, byte [esp + 0x12]
mov eax, dword [esp + 0x20]
cmp dword [eax + edi*4], 0
jge 0x4a413f
mov edx, dword [esi + 4]
add edx, ebx
test byte [edx + 0xe], 0x60
je 0x4a413b
movzx eax, cl
mov ecx, esi
push eax
call fcn.004872d4
mov edx, dword [esp + 0x24]
mov ecx, eax
call fcn.00492f16
pop ecx
test eax, eax
je 0x4a413b
mov eax, dword [esp + 0x20]
mov dword [eax + edi*4], 0x1869f
xor eax, eax
lea edx, [eax + 1]
mov dword [esp + 0x24], edx
jmp 0x4a413f
mov edx, dword [esp + 0x24]
movzx eax, word [esi + 0x22]
inc edi
mov ecx, eax
add ebx, 0x10
cwde
cmp edi, eax
jl 0x4a40f1
mov eax, ecx
mov cl, byte [esp + 0x12]
test edx, edx
jne 0x4a40a1
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x14]
mov dl, byte [esp + 0x40]
xor eax, eax
inc eax
cmp byte [edi + 0x2b], al
jne 0x4a417b
or eax, 0xffffffff
or ecx, 0xffffffff
jmp 0x4a4195
xorps xmm0, xmm0
movlpd qword [esp + 0xb0], xmm0
mov ecx, dword [esp + 0xb4]
mov eax, dword [esp + 0xb0]
mov ebx, dword [esp + 0x5c]
mov dword [ebx + 0x40], eax
movzx eax, dl
mov edx, edi
push eax
push dword [esp + 0x24]
mov dword [ebx + 0x44], ecx
mov ecx, esi
mov dword [esp + 0x9c], eax
call fcn.00490fb1
cmp dword [ebp + 0x10], 5
pop ecx
pop ecx
mov ecx, eax
mov eax, dword [esp + 0x78]
push 1
pop ebx
cmove eax, ebx
mov dword [esp + 0x54], ecx
and dword [esp + 0x98], 0
mov dword [esp + 0x78], eax
mov edi, dword [edi + 8]
test edi, edi
je 0x4a42df
mov ebx, dword [esp + 0x80]
mov edx, dword [esp + 0x20]
inc ebx
mov dword [esp + 0x30], ebx
cmp byte [esp + 0x40], 0
jne 0x4a435e
xor eax, eax
inc eax
cmp ecx, eax
jg 0x4a435e
cmp edi, dword [esp + 0x34]
je 0x4a435e
mov ecx, dword [edi + 0x24]
test ecx, ecx
je 0x4a4237
movzx eax, byte [esp + 0x12]
mov edx, dword [esp + 0x20]
push eax
call fcn.00492f16
pop ecx
test eax, eax
jne 0x4a435e
mov edx, dword [esp + 0x20]
xor ecx, ecx
xor eax, eax
xor ebx, ebx
mov dword [esp + 0xb0], ecx
cmp ax, word [edi + 0x32]
jae 0x4a42a7
mov dword [esp + 0x24], ecx
mov eax, dword [edi + 4]
movzx eax, word [eax + ebx*2]
test ax, ax
js 0x4a4265
cwde
mov eax, dword [edx + eax*4]
not eax
shr eax, 0x1f
jmp 0x4a4288
movzx eax, byte [esp + 0x12]
mov ecx, dword [edi + 0x28]
mov edx, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x28]
mov ecx, dword [ecx + eax + 8]
call fcn.00492f16
mov edx, dword [esp + 0x24]
pop ecx
mov ecx, dword [esp + 0x24]
test eax, eax
jne 0x4a4336
movzx eax, word [edi + 0x32]
inc ebx
add ecx, 0x14
mov dword [esp + 0x24], ecx
cmp ebx, eax
jl 0x4a424e
mov ecx, dword [esp + 0xb0]
mov ebx, dword [esp + 0x30]
mov byte [ebx], 0
mov eax, dword [esp + 0x98]
mov edx, dword [esp + 0x74]
mov dword [edx + eax*4], ecx
inc eax
mov edi, dword [edi + 0x14]
inc ebx
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x20]
mov dword [esp + 0x98], eax
mov dword [esp + 0x30], ebx
test edi, edi
jne 0x4a41f4
xor ebx, ebx
inc ebx
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x74]
inc dword [esi + 0x2c]
mov eax, dword [esi + 0x2c]
mov dword [edx + ecx*4], eax
cmp dword [esp + 0x78], 0
je 0x4a4313
mov eax, dword [esp + 0x9c]
inc eax
push eax
push ebx
push dword [esp + 0x88]
call fcn.00719250
add esp, 0xc
cmp byte [esi + 0x12], 0
mov edi, dword [esp + 0x18]
jne 0x4a4324
or dword [edi + 0x98], 0x10
cmp dword [esp + 0x58], 0
jne 0x4a437a
cmp dword [esp + 0x54], 0
jne 0x4a437a
xor edx, edx
jmp 0x4a437c
inc dword [esi + 0x2c]
movzx eax, word [edi + 0x34]
mov ecx, dword [esi + 0x2c]
add eax, ecx
cmp dword [ebp + 0x10], 0xb
mov ebx, dword [esp + 0x30]
mov dword [esi + 0x2c], eax
jne 0x4a436d
cmp byte [edi + 0x36], 5
jne 0x4a436d
xor eax, eax
inc eax
mov dword [esp + 0x78], eax
jmp 0x4a436d
inc dword [esi + 0x2c]
movzx eax, word [edi + 0x34]
mov ecx, dword [esi + 0x2c]
add eax, ecx
mov dword [esi + 0x2c], eax
test ecx, ecx
jne 0x4a42ae
jmp 0x4a42ab
mov edx, ebx
push dword [esp + 0x60]
mov ecx, esi
call fcn.0048bf47
mov ebx, dword [esp + 0x18]
xor eax, eax
inc eax
pop ecx
cmp byte [ebx + 0x2b], al
je 0x4a441c
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x74]
mov edx, dword [esi + 0x2c]
inc edx
cmp byte [esp + 0x2b], 0
mov dword [esp + 0x68], edx
mov eax, dword [ecx + eax*4]
mov dword [esp + 0xbc], eax
mov dword [esi + 0x2c], edx
mov dword [esp + 0x38], edx
jne 0x4a43d4
cmp dword [esp + 0x58], 0
jne 0x4a43d4
mov eax, dword [esp + 0x54]
mov ecx, edx
test eax, eax
je 0x4a43eb
movsx ecx, word [ebx + 0x22]
lea eax, [edx + 1]
add ecx, edx
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x54]
mov dword [esi + 0x2c], ecx
cmp byte [esp + 0x40], 0
jne 0x4a43fd
cmp dword [esp + 0x58], 0
jne 0x4a43fd
test eax, eax
je 0x4a4409
lea eax, [ecx + 1]
mov dword [esp + 0x68], eax
mov ecx, eax
mov dword [esi + 0x2c], eax
lea eax, [ecx + 1]
mov dword [esp + 0x8c], eax
movsx eax, word [ebx + 0x22]
add eax, ecx
mov dword [esi + 0x2c], eax
mov cl, byte [esp + 0x13]
cmp cl, 2
jne 0x4a4447
mov ecx, dword [esi + 0xfc]
mov eax, dword [ebx]
mov dword [esp + 0xb0], ecx
mov cl, byte [esp + 0x13]
mov dword [esp + 0xd4], esi
mov dword [esi + 0xfc], eax
jmp 0x4a4463
mov eax, dword [esp + 0xc4]
mov dword [esp + 0xd4], eax
mov eax, dword [esp + 0xc0]
mov dword [esp + 0xb0], eax
cmp dword [esp + 0x2c], 0
jne 0x4a449d
cmp cl, 2
jne 0x4a4486
push dword [esp + 0x1c]
mov edx, ebx
mov ecx, esi
push 0
push 0
push dword [ebp + 0xc]
call fcn.0048cdcd
add esp, 0x10
mov edx, dword [ebp + 0xc]
lea ecx, [esp + 0xd8]
call fcn.0047ba95
test eax, eax
jne 0x4a5226
xor edx, edx
inc edx
cmp byte [ebx + 0x2b], dl
jne 0x4a44ca
push dword [ebp + 0x10]
mov edx, dword [esp + 0x60]
mov ecx, esi
push dword [ebp + 0xc]
push dword [esp + 0x28]
push dword [esp + 0x7c]
push dword [ebp + 8]
push ebx
call fcn.004a5283
add esp, 0x18
jmp 0x4a5226
dec dword [esi + 0x38]
mov eax, dword [esi + 0x38]
mov dword [esp + 0x48], eax
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 0x24]
xor eax, eax
and ecx, edx
or eax, ecx
je 0x4a4521
cmp dword [esi + 0x7c], 0
jne 0x4a4521
cmp byte [esi + 0x12], 0
jne 0x4a4521
cmp byte [esi + 0x99], 0
jne 0x4a4521
cmp dword [ebp + 0x1c], 0
jne 0x4a4521
inc dword [esi + 0x2c]
mov ecx, edi
mov eax, dword [esi + 0x2c]
push 0
push eax
push 0
push 0x47
pop edx
mov dword [esp + 0xdc], eax
call fcn.0046b9a1
add esp, 0xc
cmp dword [esp + 0x2c], 0
jne 0x4a4584
test byte [ebx + 0x1c], 0x80
jne 0x4a4584
push dword [esp + 0x38]
mov ecx, edi
push dword [esp + 0xc0]
push 0
push 0x4b
pop edx
call fcn.0046b9a1
mov ecx, dword [esi + 0x28]
add esp, 0xc
mov dword [esp + 0x3c], ecx
push dword [esp + 0xbc]
lea eax, [ecx + 1]
push 0
push ecx
push 0x76
pop edx
mov ecx, edi
mov dword [esi + 0x28], eax
call fcn.0046b9a1
add esp, 0xc
mov edi, eax
cmp dword [ebp + 0x1c], 0
mov dword [esp + 0xc0], edi
je 0x4a468e
jmp 0x4a47ca
mov edx, dword [esp + 0x34]
test edx, edx
je 0x4a4592
movzx ebx, word [edx + 0x32]
jmp 0x4a4594
xor ebx, ebx
mov eax, dword [esi + 0x2c]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0xa4], ebx
inc edi
movsx ebx, bx
lea ecx, [eax + 1]
add eax, ebx
add eax, edi
mov dword [esp + 0x64], ecx
cmp dword [ebp + 0x1c], 0
mov dword [esp + 0x50], eax
mov dword [esi + 0x2c], eax
jne 0x4a476a
cmp byte [esp + 0x13], 2
jne 0x4a45d3
mov eax, dword [esp + 0x14]
movsx eax, word [eax + 0x22]
jmp 0x4a45d5
xor eax, eax
lea edi, [eax + ebx]
mov eax, dword [esi + 0x28]
add edi, dword [esp + 0x2c]
mov dword [esp + 0x3c], eax
inc eax
mov dword [esi + 0x28], eax
test edx, edx
je 0x4a4603
lea eax, [ecx - 1]
add eax, ebx
push eax
push ecx
mov ecx, dword [esp + 0x20]
push 0
push 0x4b
pop edx
call fcn.0046b9a1
add esp, 0xc
mov ecx, dword [esp + 0x18]
push 0
push edi
push dword [esp + 0x44]
push 0x76
pop edx
call fcn.0046b9a1
mov dword [esp + 0xcc], eax
add esp, 0xc
mov eax, dword [esp + 0x34]
test eax, eax
je 0x4a464b
mov edx, eax
mov ecx, esi
call fcn.0048c369
test eax, eax
je 0x4a4647
mov ecx, dword [esp + 0x18]
mov edx, eax
push 0xfffffffffffffff8
mov word [eax + 8], di
call fcn.0046c19c
pop ecx
mov eax, dword [esp + 0x34]
cmp dword [esp + 0x2c], 0
je 0x4a4683
mov edi, dword [esp + 0x3c]
mov edx, edi
push ecx
push ecx
push dword [ebp + 0xc]
mov ecx, esi
push dword [esp + 0x68]
push dword [ebp + 8]
push eax
call fcn.004a39b3
add esp, 0x18
cmp byte [esp + 0x13], 2
jne 0x4a4786
mov dword [esp + 0x1c], edi
jmp 0x4a4786
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0xc0]
cmp byte [esi + 0x12], 0
push 4
pop eax
jne 0x4a46b7
cmp dword [esp + 0x58], 0
jne 0x4a46b7
cmp dword [esp + 0x54], 0
jne 0x4a46b7
cmp byte [esp + 0x40], 0
jne 0x4a46b7
cmp dword [esp + 0x78], 0
push 0xc
pop ecx
cmove eax, ecx
push dword [esp + 0x90]
mov edx, dword [esp + 0x60]
mov ecx, esi
push eax
xor eax, eax
push eax
push eax
push eax
push dword [ebp + 0xc]
call fcn.004b1b23
mov edx, eax
add esp, 0x18
mov dword [esp + 0xac], edx
test edx, edx
je 0x4a5226
mov eax, dword [edx + 0x14]
mov ecx, dword [edx + 0x18]
movzx edx, byte [edx + 0x2e]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x44], edx
mov eax, dword [eax + 0x30]
and eax, 1
mov dword [esp + 0xb8], eax
xor eax, eax
inc eax
cmp edx, eax
je 0x4a4809
cmp dword [esi + 0x78], 0
mov eax, esi
cmovne eax, dword [esi + 0x78]
cmp edx, 2
mov edx, dword [esp + 0x1c]
mov byte [eax + 0x14], 1
jne 0x4a480d
test ecx, ecx
js 0x4a480d
cmp ecx, edx
je 0x4a480d
mov eax, ecx
mov ecx, dword [esp + 0x80]
sub eax, dword [esp + 0xa0]
cmp byte [eax + ecx], 0
je 0x4a480d
and dword [esp + 0x44], 0
jmp 0x4a480d
and dword [esp + 0x3c], 0
xor edi, edi
mov edx, dword [esp + 0x1c]
mov dword [esp + 0xc0], edi
mov dword [esp + 0x1c], edx
cmp dword [esp + 0x2c], edi
je 0x4a47c6
cmp dword [esi + 0x78], 0
mov eax, esi
mov edx, dword [esp + 0x64]
cmovne eax, dword [esi + 0x78]
xor ecx, ecx
inc ecx
mov dword [esp + 0xa8], ebx
mov dword [esp + 0x50], edx
mov byte [eax + 0x14], cl
xor ecx, ecx
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x44], ecx
mov dword [esp + 0x60], eax
jmp 0x4a4949
mov ebx, dword [esp + 0x14]
and dword [esp + 0xac], 0
xor eax, eax
push 0x10
push dword [esp + 0x4c]
inc eax
push dword [ebp + 0xc]
mov dword [esp + 0x50], eax
push esi
call fcn.00480e00
mov eax, dword [esp + 0xc4]
add esp, 0x10
and dword [esp + 0xb8], 0
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x60], eax
mov edx, dword [esp + 0x1c]
test byte [ebx + 0x1c], 0x80
jne 0x4a4885
mov ecx, dword [esp + 0x18]
push 0
push dword [esp + 0x3c]
push edx
mov edx, 0x87
call fcn.0046b9a1
mov ecx, dword [esp + 0x50]
add esp, 0xc
test ecx, ecx
jne 0x4a4869
push dword [esp + 0x38]
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0x78]
inc dword [esi + 0x2c]
push dword [esp + 0xc0]
mov eax, dword [esi + 0x2c]
push dword [esp + 0x44]
mov dword [edx + ecx*4], eax
mov edx, 0x80
mov ecx, dword [esp + 0x24]
call fcn.0046b9a1
add esp, 0xc
jmp 0x4a487c
test edi, edi
je 0x4a494d
mov ecx, dword [esp + 0x18]
mov edx, edi
call fcn.0046c090
mov ecx, dword [esp + 0x44]
jmp 0x4a494d
mov eax, dword [esp + 0xa4]
xor edi, edi
movsx ebx, ax
test ebx, ebx
jle 0x4a48cb
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x18]
add eax, edi
push eax
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 4]
movsx eax, word [eax + edi*2]
push eax
push edx
mov edx, esi
call fcn.0047f27c
mov edx, dword [esp + 0x28]
add esp, 0xc
inc edi
cmp edi, ebx
jl 0x4a4899
mov esi, dword [esp + 0x88]
mov ecx, dword [esp + 0x44]
test ecx, ecx
je 0x4a48fe
mov eax, dword [esp + 0xc0]
test eax, eax
je 0x4a48ed
mov ecx, dword [esp + 0x18]
mov edx, eax
call fcn.0046c090
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x64]
mov dword [esp + 0xa8], ebx
mov dword [esp + 0x50], eax
jmp 0x4a4949
mov edx, dword [esp + 0x34]
push ebx
push ecx
mov ecx, dword [esp + 0x74]
call fcn.0049196b
pop ecx
mov ecx, dword [esp + 0x1c]
push eax
push dword [esp + 0x58]
push ebx
push dword [esp + 0x74]
push 0x61
pop edx
call fcn.0046bac5
mov ecx, dword [esp + 0x2c]
add esp, 0x14
mov edx, 0x8a
push ebx
push dword [esp + 0x68]
push dword [esp + 0x58]
push dword [esp + 0x48]
call fcn.0046bcab
mov ecx, dword [esp + 0x54]
add esp, 0x10
mov ebx, dword [esp + 0x14]
cmp dword [ebp + 0x1c], 0
jne 0x4a4bd0
cmp dword [esp + 0x2c], 0
jne 0x4a496f
cmp ecx, 2
je 0x4a496f
mov ecx, dword [esp + 0xac]
call fcn.004b2538
cmp byte [esp + 0x13], 2
je 0x4a4a24
mov edx, dword [esp + 0x44]
xor edi, edi
test edx, edx
je 0x4a49f0
mov eax, dword [esp + 0x60]
test eax, eax
js 0x4a499e
sub eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0x80]
mov byte [eax + ecx], 0
mov ecx, dword [esp + 0x24]
test ecx, ecx
js 0x4a49c1
mov esi, dword [esp + 0x80]
mov eax, ecx
sub eax, dword [esp + 0xa0]
mov byte [eax + esi], 0
mov esi, dword [esp + 0x88]
cmp edx, 2
jne 0x4a49f0
xor eax, eax
test ecx, ecx
mov ecx, dword [esp + 0x9c]
setns al
sub ecx, eax
test ecx, ecx
jle 0x4a49f0
mov ecx, dword [esp + 0x18]
xor eax, eax
push eax
push eax
push eax
push 0xf
pop edx
call fcn.0046b9a1
add esp, 0xc
mov edi, eax
xor edx, edx
mov ecx, esi
push edx
push edx
push dword [esp + 0x88]
push dword [esp + 0xac]
push edx
push 0x71
mov edx, ebx
call fcn.0049422f
mov ebx, dword [esp + 0x30]
add esp, 0x18
test edi, edi
je 0x4a4a28
mov edx, edi
mov ecx, ebx
call fcn.0046bf4d
jmp 0x4a4a28
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x44]
test edi, edi
je 0x4a4a95
mov eax, dword [esp + 0x1c]
cmp dword [esp + 0x60], eax
je 0x4a4a5d
cmp dword [esp + 0x24], eax
je 0x4a4a5d
push dword [esp + 0xa8]
mov ecx, ebx
push dword [esp + 0x54]
push dword [esp + 0x50]
push eax
push 0x1c
pop edx
call fcn.0046bcab
add esp, 0x10
xor eax, eax
inc eax
cmp edi, eax
je 0x4a4a6e
dec dword [esi + 0x38]
mov eax, dword [esi + 0x38]
mov dword [esp + 0x30], eax
cmp dword [esp + 0x34], 0
mov eax, dword [esp + 0x38]
cmovne eax, dword [esp + 0x50]
push 0
push dword [esp + 0x4c]
push eax
push 0x32
pop edx
mov ecx, ebx
call fcn.0046b9a1
add esp, 0xc
jmp 0x4a4bd4
cmp dword [esp + 0x34], 0
jne 0x4a4af1
cmp dword [esp + 0x2c], 0
jne 0x4a4af1
push 0
push dword [esp + 0x4c]
mov ecx, ebx
push dword [esp + 0x44]
push 0x24
pop edx
call fcn.0046b9a1
add esp, 0xc
mov edx, 0x87
dec dword [esi + 0x38]
mov ecx, ebx
mov edi, dword [esi + 0x38]
mov dword [esp + 0x30], edi
push 0
push dword [esp + 0x3c]
push dword [esp + 0x44]
call fcn.0046b9a1
mov dword [esp + 0xd8], eax
add esp, 0xc
push dword [esp + 0x38]
push edi
push dword [esp + 0x24]
push 0x1f
jmp 0x4a4a85
dec dword [esi + 0x38]
mov ecx, ebx
mov edi, dword [esi + 0x38]
push 0
push dword [esp + 0x4c]
mov dword [esp + 0x38], edi
push dword [esp + 0x44]
push 0x24
pop edx
call fcn.0046b9a1
mov eax, dword [ebx + 0x6c]
add esp, 0xc
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x4a4bae
cmp byte [esp + 0x13], 2
je 0x4a4bd8
cmp dword [esp + 0x34], 0
je 0x4a4b93
mov eax, dword [esp + 0xa4]
xor edi, edi
movsx ebx, ax
test ebx, ebx
jle 0x4a4b73
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x64]
mov ecx, esi
add eax, edi
push eax
push edi
push dword [esp + 0x44]
push 0x5e
pop edx
call fcn.0046b9a1
add esp, 0xc
inc edi
cmp edi, ebx
jl 0x4a4b4e
mov esi, dword [esp + 0x88]
push ebx
push dword [esp + 0x68]
mov ebx, dword [esp + 0x20]
push dword [esp + 0x38]
push dword [esp + 0x28]
mov ecx, ebx
push 0x1c
pop edx
call fcn.0046bcab
add esp, 0x10
jmp 0x4a4bd4
push 0
push dword [esp + 0x3c]
mov edx, 0x87
mov ecx, ebx
push dword [esp + 0x44]
call fcn.0046b9a1
jmp 0x4a4ae1
push 0
push dword [esp + 0x54]
mov edx, 0x86
mov ecx, ebx
push dword [esp + 0x44]
call fcn.0046b9a1
add esp, 0xc
push 0
push dword [esp + 0x54]
push edi
jmp 0x4a4b80
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x2c]
cmp byte [esp + 0x12], 0
je 0x4a4c20
mov edi, dword [esp + 0x68]
push edi
test eax, eax
jne 0x4a4bf6
mov edx, dword [esp + 0x74]
mov ecx, esi
call fcn.004807d0
pop ecx
jmp 0x4a4c0e
push dword [esp + 0x80]
mov ecx, ebx
push dword [esp + 0x44]
push 0x5e
pop edx
call fcn.0046b9a1
add esp, 0xc
push 0
push 0
push edi
push 0xd
pop edx
mov ecx, ebx
call fcn.0046b9a1
add esp, 0xc
cmp byte [esp + 0x2b], 0
mov eax, dword [esp + 0x54]
jne 0x4a4c39
test eax, eax
jne 0x4a4c3d
cmp dword [esp + 0x58], eax
je 0x4a4d1e
test eax, eax
je 0x4a4c4c
mov edx, dword [esp + 0x14]
mov ecx, esi
call fcn.00490ed7
mov ebx, eax
jmp 0x4a4c4e
xor ebx, ebx
push dword [ebp + 0x10]
mov edx, dword [esp + 0x5c]
mov ecx, esi
push dword [esp + 0x18]
push 3
push 0
push dword [ebp + 8]
call fcn.004a38a2
mov ecx, dword [esp + 0x28]
or ebx, eax
xor eax, eax
add esp, 0x14
xor edi, edi
cmp ax, word [ecx + 0x22]
jge 0x4a4cf7
xor esi, esi
mov eax, dword [ecx + 4]
mov edx, edi
movzx eax, word [eax + esi + 0xe]
mov dword [esp + 0x24], eax
call fcn.0048780b
movsx edx, ax
add edx, dword [esp + 0x84]
cmp ebx, 0xffffffff
je 0x4a4cca
cmp edi, 0x20
jge 0x4a4cae
xor eax, eax
mov ecx, edi
inc eax
shl eax, cl
test ebx, eax
jne 0x4a4cca
xor eax, eax
inc eax
test byte [esp + 0x24], al
jne 0x4a4cca
mov ecx, dword [esp + 0x18]
push 0
push edx
push 0
push 0x4b
pop edx
call fcn.0046b9a1
jmp 0x4a4cdd
mov ecx, dword [esp + 0x18]
push edx
mov edx, dword [esp + 0x18]
push edi
push dword [esp + 0x24]
call fcn.0047f27c
mov ecx, dword [esp + 0x20]
add esp, 0xc
inc edi
add esi, 0x10
movsx eax, word [ecx + 0x22]
cmp edi, eax
jl 0x4a4c7c
mov esi, dword [esp + 0x88]
cmp byte [esp + 0x12], 0
jne 0x4a4d1e
cmp dword [esp + 0x34], 0
jne 0x4a4d1e
mov ecx, dword [esp + 0x18]
push 0
push dword [esp + 0x6c]
push dword [esp + 0x40]
push 0x50
pop edx
call fcn.0046b9a1
add esp, 0xc
push dword [ebp + 0x10]
mov edx, dword [esp + 0x5c]
xor eax, eax
push dword [esp + 0x18]
inc eax
mov ecx, esi
push eax
push eax
push dword [ebp + 8]
call fcn.004a38a2
mov edx, dword [esp + 0xa0]
xor ebx, ebx
and dword [esp + 0x98], ebx
add esp, 0x14
mov dword [esp + 0x60], eax
mov edi, edx
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + 0x22]
cmp word [esp + 0x84], cx
jge 0x4a4e5b
mov edx, ecx
xor ecx, ecx
mov dword [esp + 0x24], ecx
movsx eax, word [eax + 0x20]
cmp ebx, eax
je 0x4a4dfe
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
movzx eax, word [eax + ecx + 0xe]
test al, 0x60
je 0x4a4d99
test al, 0x20
je 0x4a4e32
dec edi
jmp 0x4a4e32
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + ebx*4]
test ecx, ecx
js 0x4a4de3
cmp dword [esp + 0x2c], 0
je 0x4a4dce
cmp byte [esp + 0x13], 2
jne 0x4a4db7
movzx eax, dx
jmp 0x4a4dc1
mov eax, dword [esp + 0xa4]
movzx eax, ax
push edi
cwde
add eax, ecx
push eax
push dword [esp + 0x44]
push 0x5e
jmp 0x4a4e05
mov eax, dword [ebp + 8]
imul edx, ecx, 0x14
mov ecx, esi
push edi
mov edx, dword [edx + eax + 8]
call fcn.004807d0
pop ecx
jmp 0x4a4e32
xor eax, eax
inc eax
test dword [esp + 0xc8], eax
je 0x4a4e14
cmp ebx, 0x1f
jg 0x4a4e14
mov ecx, ebx
shl eax, cl
test dword [esp + 0x60], eax
jne 0x4a4e14
push 0
push edi
push 0
push 0x4b
mov ecx, dword [esp + 0x28]
pop edx
call fcn.0046b9a1
add esp, 0xc
jmp 0x4a4e32
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
push edi
push ebx
push dword [esp + 0x24]
call fcn.0047f27c
add esp, 0xc
and dword [esp + 0xb8], 0
mov eax, dword [esp + 0x14]
inc ebx
add dword [esp + 0x24], 0x10
inc edi
mov ecx, dword [esp + 0x24]
movzx eax, word [eax + 0x22]
mov edx, eax
cwde
cmp ebx, eax
mov eax, dword [esp + 0x14]
jl 0x4a4d6f
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x14]
test byte [ebx + 0x1c], 0x60
je 0x4a4e6e
push ebx
mov ecx, esi
call fcn.00491c0f
pop ecx
xor ecx, ecx
inc ecx
test byte [esp + 0xc8], cl
je 0x4a4fa4
push dword [esp + 0x8c]
mov edi, dword [esp + 0x1c]
mov edx, ebx
mov ecx, edi
call fcn.00491a80
mov edx, dword [esp + 0x5c]
xor eax, eax
pop ecx
push dword [esp + 0x30]
inc eax
mov ecx, esi
push dword [ebp + 0x10]
push dword [esp + 0x40]
push ebx
push eax
push dword [ebp + 8]
push 0x81
call fcn.004a3819
add esp, 0x1c
cmp byte [esp + 0x13], 2
je 0x4a5151
cmp dword [esp + 0x34], 0
mov ecx, edi
je 0x4a4eed
push dword [esp + 0xa8]
push dword [esp + 0x54]
push dword [esp + 0x38]
push dword [esp + 0x28]
push 0x1c
pop edx
call fcn.0046bcab
add esp, 0x10
jmp 0x4a4f04
push dword [esp + 0x38]
push dword [esp + 0x34]
push dword [esp + 0x24]
push 0x1f
pop edx
call fcn.0046b9a1
add esp, 0xc
mov eax, dword [esp + 0x14]
xor edx, edx
mov ecx, dword [esp + 0x8c]
xor edi, edi
mov ebx, ecx
cmp dx, word [eax + 0x22]
jge 0x4a4f8d
xor ecx, ecx
mov esi, eax
mov dword [esp + 0x84], ecx
mov eax, dword [esi + 4]
movzx eax, word [eax + ecx + 0xe]
test al, 0x60
je 0x4a4f3e
test al, 0x20
lea eax, [ebx - 1]
cmove eax, ebx
mov ebx, eax
jmp 0x4a4f6b
mov eax, dword [esp + 0x20]
cmp dword [eax + edi*4], 0
jge 0x4a4f6b
movsx eax, word [esi + 0x20]
cmp edi, eax
je 0x4a4f6b
mov ecx, dword [esp + 0x18]
mov edx, esi
push ebx
push edi
push dword [esp + 0x24]
call fcn.0047f27c
mov ecx, dword [esp + 0x90]
add esp, 0xc
movsx eax, word [esi + 0x22]
add ecx, 0x10
inc edi
mov dword [esp + 0x84], ecx
inc ebx
cmp edi, eax
jl 0x4a4f26
mov esi, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x14]
test byte [ebx + 0x1c], 0x60
je 0x4a4faf
mov edx, ecx
mov ecx, esi
push ebx
call fcn.00491c0f
pop ecx
jmp 0x4a4faf
cmp byte [esp + 0x13], 2
je 0x4a51bd
mov edi, dword [esp + 0x30]
lea eax, [esp + 0x78]
push 0
push dword [esp + 0x24]
mov edx, ebx
mov ecx, esi
push eax
push edi
push dword [ebp + 0x10]
push dword [esp + 0x54]
push dword [esp + 0x50]
push dword [esp + 0x84]
push dword [esp + 0xb0]
push dword [esp + 0x40]
push dword [esp + 0x9c]
call fcn.00492f60
add esp, 0x2c
cmp dword [esp + 0x78], 0
jne 0x4a4ffd
cmp byte [esp + 0x40], 0
je 0x4a5043
cmp dword [esp + 0x34], 0
je 0x4a5027
push dword [esp + 0xa8]
push dword [esp + 0x54]
push edi
push dword [esp + 0x28]
mov edi, dword [esp + 0x28]
mov ecx, edi
push 0x1c
pop edx
call fcn.0046bcab
add esp, 0x10
jmp 0x4a5047
push dword [esp + 0x38]
push edi
push dword [esp + 0x24]
mov edi, dword [esp + 0x24]
mov ecx, edi
push 0x1f
pop edx
call fcn.0046b9a1
add esp, 0xc
jmp 0x4a5047
mov edi, dword [esp + 0x18]
cmp dword [esp + 0x54], 0
je 0x4a506b
push dword [esp + 0x94]
mov edx, ebx
mov ecx, esi
push dword [esp + 0x24]
push 0
push dword [esp + 0x44]
call fcn.00490ac0
add esp, 0x10
push 0xffffffffffffffff
push dword [esp + 0x78]
mov edx, ebx
mov ecx, esi
push dword [esp + 0x98]
push dword [esp + 0x28]
call fcn.0048da0d
add esp, 0x10
cmp dword [esp + 0xb8], 0
je 0x4a50a9
push 0
push 0
push dword [esp + 0x24]
mov edx, 0x8f
mov ecx, edi
call fcn.0046b9a1
add esp, 0xc
mov eax, dword [esp + 0x54]
xor ecx, ecx
inc ecx
cmp eax, ecx
jg 0x4a50bb
cmp byte [esp + 0x40], 0
je 0x4a50d6
push 0
push 0
push dword [esp + 0x24]
mov edx, 0x82
mov ecx, edi
call fcn.0046b9a1
mov eax, dword [esp + 0x60]
add esp, 0xc
test eax, eax
je 0x4a50f7
push dword [esp + 0x94]
mov edx, ebx
mov ecx, esi
push dword [esp + 0x24]
push dword [esp + 0x70]
push 0
call fcn.00490ac0
add esp, 0x10
cmp dword [esp + 0x44], 2
mov edx, ebx
push 0
push 0
push 6
pop ecx
push 4
pop eax
cmove eax, ecx
mov ecx, esi
push eax
push dword [esp + 0x80]
push dword [esp + 0x78]
push dword [esp + 0xa4]
push dword [esp + 0x34]
call fcn.004940da
add esp, 0x1c
cmp dword [esp + 0x54], 0
je 0x4a5151
push dword [esp + 0x94]
mov edx, ebx
mov ecx, esi
push dword [esp + 0x24]
push dword [esp + 0x40]
push dword [ebp + 8]
call fcn.004917f8
add esp, 0x10
xor ecx, ecx
inc ecx
mov eax, dword [esp + 0xd0]
test eax, eax
je 0x4a5170
push 0
push ecx
push eax
push 0x56
pop edx
mov ecx, edi
call fcn.0046b9a1
add esp, 0xc
push dword [esp + 0x30]
mov edx, dword [esp + 0x5c]
mov ecx, esi
push dword [ebp + 0x10]
push dword [esp + 0x40]
push ebx
push 2
push dword [ebp + 8]
push 0x81
call fcn.004a3819
mov eax, dword [esp + 0x60]
xor ecx, ecx
inc ecx
add esp, 0x1c
cmp eax, ecx
je 0x4a51e2
mov edx, dword [esp + 0x30]
mov ecx, edi
cmp eax, 2
jne 0x4a51c3
call fcn.0046bd45
mov ecx, dword [esp + 0xac]
call fcn.004b2538
jmp 0x4a51e2
mov edi, dword [esp + 0x18]
jmp 0x4a5154
call fcn.0046bd45
push 0
push dword [esp + 0xd0]
mov ecx, edi
push dword [esp + 0x44]
push 0x27
pop edx
call fcn.0046b9a1
add esp, 0xc
mov edx, dword [esp + 0x48]
mov ecx, edi
call fcn.0046bd45
cmp byte [esi + 0x12], 0
jne 0x4a520c
cmp dword [esi + 0x7c], 0
jne 0x4a520c
cmp dword [ebp + 0x1c], 0
jne 0x4a520c
cmp dword [esi + 0x74], 0
je 0x4a520c
mov ecx, esi
call fcn.00491f2e
mov eax, dword [esp + 0xd0]
test eax, eax
je 0x4a5226
push str.rows_updated
mov edx, eax
mov ecx, edi
call fcn.0048ccc2
pop ecx
mov eax, dword [esp + 0xd4]
test eax, eax
je 0x4a523e
mov ecx, dword [esp + 0xb0]
mov dword [eax + 0xfc], ecx
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x6c]
call fcn.00450d17
mov edx, dword [esp + 0x5c]
mov ecx, dword [esp + 0x6c]
call fcn.0048b9a3
mov eax, dword [ebp + 8]
test eax, eax
je 0x4a526a
mov ecx, dword [esp + 0x6c]
mov edx, eax
call fcn.0047d8c7
cmp dword [ebp + 0xc], 0
je 0x4a527c
mov edx, dword [ebp + 0xc]
mov ecx, dword [esp + 0x6c]
call fcn.0047cbeb
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret