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

Disassembly:
sub esp, 0x70
push ebx
mov ebx, dword [esp + 0x78]
push ebp
push esi
mov esi, dword [ebx + 8]
mov ebp, dword [ebx]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x28], esi
test esi, esi
jne 0x4c72b1
cmp dword [ebx + 0x74], esi
jne 0x4c729a
test byte [ebp + 0x4c], 8
jne 0x4c729a
mov byte [ebx + 0x17], 1
push ebx
call fcn.004d54b0
mov esi, eax
mov dword [esp + 0x2c], eax
add esp, 4
test esi, esi
je 0x4c7575
or dword [esi + 0x98], 0x20
lea eax, [esp + 0x4c]
push edi
mov edi, dword [esp + 0x8c]
push eax
push edi
push dword [esp + 0x90]
mov dword [ebx + 0x2c], 2
push ebx
call fcn.004d0f10
mov ecx, eax
add esp, 0x10
mov dword [esp + 0x14], ecx
test ecx, ecx
js 0x4c7574
mov ebp, dword [ebp + 0x10]
shl eax, 4
add ebp, eax
mov dword [esp + 0x20], eax
cmp ecx, 1
jne 0x4c730d
push ebx
call fcn.004c3c20
add esp, 4
test eax, eax
jne 0x4c7574
push dword [esp + 0x50]
mov ebx, dword [esp + 0x14]
push ebx
call fcn.004c35f0
add esp, 8
mov dword [esp + 0x34], eax
test eax, eax
je 0x4c7574
cmp dword [esp + 0x94], 0
push dword [esp + 0x90]
je 0x4c734b
push 0x5286cc
push ebx
call fcn.004c2dc0
add esp, 0xc
jmp 0x4c7354
push ebx
call fcn.004c35f0
add esp, 8
cmp dword [edi + 4], 0
mov dword [esp + 0x18], eax
jbe 0x4c7363
mov ebx, dword [ebp]
jmp 0x4c7365
xor ebx, ebx
push ebx
push eax
push dword [esp + 0x3c]
mov dword [esp + 0x28], ebx
push 0x13
push dword [esp + 0x94]
call fcn.004a51d0
add esp, 0x14
test eax, eax
jne 0x4c754e
mov dword [esp + 0x70], eax
lea ecx, [esp + 0x70]
mov eax, dword [esp + 0x34]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x18]
push ecx
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x14]
push 0xe
push ebx
mov dword [esp + 0x88], 0
push eax
mov dword [eax + 0x1ac], 0
call fcn.00460540
mov ebx, eax
add esp, 0x10
test ebx, ebx
jne 0x4c7403
push 1
push esi
call fcn.004dfb00
push 0xffffffffffffffff
push dword [esp + 0x7c]
push ebx
push ebx
push esi
call fcn.004dfab0
push dword [esp + 0x8c]
push esi
call fcn.004a0590
push dword [esp + 0x94]
call fcn.0045d750
add esp, 0x28
jmp 0x4c754e
cmp ebx, 0xc
je 0x4c7440
mov eax, dword [esp + 0x70]
test eax, eax
je 0x4c742e
push eax
push 0x5178b0
push dword [esp + 0x8c]
call fcn.004af3d0
push dword [esp + 0x7c]
call fcn.0045d750
add esp, 0x10
mov eax, dword [esp + 0x84]
inc dword [eax + 0x24]
mov dword [eax + 0xc], ebx
jmp 0x4c754e
push dword [esp + 0x34]
call fcn.0049ba60
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x4c754e
test byte [ebx + 5], 1
je 0x4c7473
push dword [esp + 0x84]
call fcn.004c9d40
add esp, 4
test eax, eax
jne 0x4c754e
mov al, byte [ebx + 5]
test al, 2
jne 0x4c7490
test al, 4
je 0x4c7486
mov edx, dword [esp + 0x18]
test edx, edx
jne 0x4c7494
push ebx
push esi
call fcn.004a2a50
add esp, 8
mov edx, dword [esp + 0x18]
movzx eax, byte [ebx + 4]
dec eax
cmp eax, 0x29
ja case.0x4c74a2.5
jmp dword [eax*4 + 0x4c96b0]
mov ebx, dword [esp + 0x14]
push ebx
push esi
call fcn.004e0670
mov eax, dword [esp + 0x20]
add esp, 8
test eax, eax
jne 0x4c74eb
mov eax, dword [esp + 0x84]
push 0
push 0x51e144
push 9
add dword [eax + 0x2c], 2
push esi
call fcn.004d4c80
add esp, 0x10
mov dword [eax + 4], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x7c], 0xfffff830
jmp 0x4c754e
push eax
call fcn.004a4f40
push eax
call fcn.004a31c0
push ebx
push 0
push dword [esp + 0x94]
mov edi, eax
call fcn.004a5c60
push edi
push 3
push ebx
push 0x5e
push esi
call fcn.004d4ac0
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x50], edi
mov eax, dword [ebp + 0xc]
push dword [eax + 0x50]
push dword [ebp + 4]
call fcn.004a9630
add esp, 0x30
jmp 0x4c754e
mov edi, dword [ebp + 4]
test edx, edx
jne 0x4c757c
test edi, edi
je 0x4c7a2a
mov eax, dword [edi + 4]
mov eax, dword [eax + 0x24]
cdq
push edx
push eax
push esi
call fcn.004a0500
add esp, 0xc
mov ebp, dword [esp + 0x10]
push dword [esp + 0x34]
push ebp
call fcn.004ad230
mov eax, dword [esp + 0x20]
add esp, 8
test eax, eax
je 0x4c7574
push eax
push dword [esp + 0x14]
call fcn.004ad230
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x70
ret
push edx
call fcn.004a4f40
mov ecx, dword [esp + 0x14]
push 0
push 0
push eax
push edi
mov dword [ecx + 0x5c], eax
call fcn.004a9720
add esp, 0x14
cmp eax, 7
jne 0x4c754e
push dword [esp + 0x10]
call fcn.004c3810
add esp, 4
jmp 0x4c754e
mov eax, dword [ebp + 4]
or ebp, 0xffffffff
mov dword [esp + 0x50], eax
test edx, edx
je 0x4c75e1
push str.fast
push edx
call fcn.004664d0
add esp, 8
test eax, eax
jne 0x4c75cf
lea ebp, [eax + 2]
jmp 0x4c75e1
mov eax, dword [esp + 0x18]
push 0
push eax
call fcn.004be230
add esp, 8
movzx ebp, al
cmp dword [edi + 4], 0
jne 0x4c761d
test ebp, ebp
js 0x4c761d
mov eax, dword [esp + 0x10]
xor ebx, ebx
cmp dword [eax + 0x14], ebx
jle 0x4c761d
xor edi, edi
mov esi, eax
lea ebx, [ebx]
mov eax, dword [esi + 0x10]
push ebp
push dword [eax + edi + 4]
call fcn.004a9550
inc ebx
lea edi, [edi + 0x10]
add esp, 8
cmp ebx, dword [esi + 0x14]
jl 0x4c7600
mov esi, dword [esp + 0x2c]
push ebp
push dword [esp + 0x54]
call fcn.004a9550
cdq
push edx
push eax
push esi
call fcn.004a0500
add esp, 0x14
jmp 0x4c754e
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x84]
push ebp
push ebx
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
call fcn.004ab040
mov eax, dword [esp + 0x3c]
add esp, 8
inc dword [ebx + 0x2c]
mov edi, dword [ebx + 0x2c]
movzx eax, byte [eax]
cmp byte [eax + 0x523870], 0x70
jne 0x4c7696
push edi
push ebp
push 0xa8
push esi
call fcn.004d4a60
add esp, 0x10
push 1
push edi
push 0x50
push esi
call fcn.004d4a60
add esp, 0x10
jmp 0x4c754e
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4c76dc
lea ecx, [esp + 0x64]
push ecx
push eax
call fcn.004ad690
add esp, 8
test eax, eax
jne 0x4c76dc
mov ecx, dword [esp + 0x68]
mov eax, dword [esp + 0x64]
test ecx, ecx
jg 0x4c76cd
jl 0x4c76dc
test eax, eax
jb 0x4c76dc
test ecx, ecx
jl 0x4c76e2
jg 0x4c76cd
cmp eax, 0xfffffffe
jbe 0x4c76e2
mov eax, 0xfffffffe
mov dword [esp + 0x68], 0
jmp 0x4c76e2
xor eax, eax
mov dword [esp + 0x68], eax
push eax
push edi
push ebp
push 0xa9
push esi
call fcn.004d4ac0
add esp, 0x14
push 1
push edi
push 0x50
push esi
call fcn.004d4a60
add esp, 0x10
jmp 0x4c754e
push edx
mov ebx, str.normal
call fcn.0048f590
mov ecx, eax
add esp, 4
mov eax, dword [edi + 4]
mov dword [esp + 0x44], ecx
test eax, eax
jne 0x4c7782
cmp ecx, 0xffffffff
jne 0x4c7730
mov eax, dword [esp + 0x10]
movzx eax, byte [eax + 0x53]
jmp 0x4c7793
test eax, eax
jne 0x4c7782
mov eax, dword [esp + 0x10]
mov ebx, 2
cmp dword [eax + 0x14], ebx
jle 0x4c777a
mov edi, 0x20
mov esi, eax
lea esp, [esp]
mov eax, dword [esi + 0x10]
push ecx
mov eax, dword [eax + edi + 4]
mov eax, dword [eax + 4]
push dword [eax]
call fcn.004c4b30
mov ecx, dword [esp + 0x4c]
lea edi, [edi + 0x10]
inc ebx
add esp, 8
cmp ebx, dword [esi + 0x14]
jl 0x4c7750
mov esi, dword [esp + 0x2c]
mov eax, dword [esp + 0x10]
mov byte [eax + 0x53], cl
mov ebx, str.normal
mov eax, dword [ebp + 4]
push ecx
mov eax, dword [eax + 4]
push dword [eax]
call fcn.004c4b30
add esp, 8
cmp eax, 1
jne 0x4c779d
mov ebx, str.exclusive
push ebx
push esi
call fcn.004a0590
add esp, 8
jmp 0x4c754e
test edx, edx
je 0x4c77fb
push edx
call fcn.004d0340
add esp, 4
mov ebp, eax
xor ebx, ebx
lea ecx, [ecx]
cmp ebx, 6
je 0x4c77fb
mov ecx, dword [ebx*4 + 0x51e068]
test ecx, ecx
je 0x4c77fb
push ebp
push ecx
push dword [esp + 0x20]
call fcn.00466710
add esp, 0xc
test eax, eax
je 0x4c77e5
inc ebx
jmp 0x4c77c0
cmp ebx, 2
jne 0x4c7813
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x20]
and eax, 0x10000000
or eax, 0
je 0x4c7818
or ebx, 0xffffffff
cmp dword [edi + 4], 0
jne 0x4c7818
xor ecx, ecx
mov dword [edi + 4], 1
mov dword [esp + 0x14], ecx
jmp 0x4c781c
cmp ebx, 0xffffffff
je 0x4c77fe
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x14]
dec edi
js 0x4c786f
mov ebp, edi
shl ebp, 4
jmp 0x4c7830
mov eax, dword [eax + 0x10]
cmp dword [eax + ebp + 4], 0
je 0x4c7861
cmp edi, ecx
je 0x4c784b
mov eax, dword [esp + 0x8c]
cmp dword [eax + 4], 0
jne 0x4c7861
push edi
push esi
call fcn.004e0670
push ebx
push 1
push edi
push 7
push esi
call fcn.004d4ac0
add esp, 0x1c
mov eax, dword [esp + 0x10]
sub ebp, 0x10
dec edi
mov ecx, dword [esp + 0x14]
jns 0x4c7830
push 1
push 1
push 0x50
push esi
call fcn.004d4a60
add esp, 0x10
jmp 0x4c754e
mov eax, dword [ebp + 4]
or ecx, 0xffffffff
mov dword [esp + 0x68], ecx
mov eax, dword [eax + 4]
mov edi, dword [eax]
mov eax, 0xfffffffe
mov dword [esp + 0x64], eax
test edx, edx
je 0x4c78cc
lea eax, [esp + 0x64]
push eax
push edx
call fcn.004ad690
mov ecx, dword [esp + 0x70]
add esp, 8
cmp ecx, 0xffffffff
jg 0x4c78c8
jl 0x4c78c1
mov eax, dword [esp + 0x64]
cmp eax, 0xffffffff
jae 0x4c78cc
or eax, 0xffffffff
or ecx, eax
jmp 0x4c78cc
mov eax, dword [esp + 0x64]
push ecx
push eax
push edi
call fcn.004c4aa0
push edx
push eax
push esi
call fcn.004a0500
add esp, 0x18
jmp 0x4c754e
mov edi, dword [ebp + 4]
test edx, edx
jne 0x4c7902
push edi
call fcn.004a75c0
cdq
push edx
push eax
push esi
call fcn.004a0500
add esp, 0x10
jmp 0x4c754e
push edx
call fcn.0048f380
mov ebx, eax
mov eax, dword [esp + 0x14]
push ebx
push edi
mov byte [eax + 0x54], bl
call fcn.004a95c0
add esp, 0xc
test eax, eax
jne 0x4c754e
cmp ebx, 1
je 0x4c7931
cmp ebx, 2
jne 0x4c754e
mov edi, dword [esi + 0x6c]
push 0
push 0x51e4c4
push 5
push esi
call fcn.004d4c80
mov edx, dword [esp + 0x24]
lea ecx, [edi + 4]
push edx
push esi
mov dword [eax + 0x30], ecx
lea ecx, [ebx - 1]
mov dword [eax + 4], edx
mov dword [eax + 0x18], edx
mov dword [eax + 0x54], edx
mov dword [eax + 0x5c], ecx
call fcn.004e0670
add esp, 0x18
jmp 0x4c754e
test edx, edx
je 0x4c7989
lea eax, [esp + 0x50]
push eax
push edx
call fcn.004be340
add esp, 8
test eax, eax
je 0x4c7989
mov edi, dword [esp + 0x50]
test edi, edi
jg 0x4c798e
mov edi, 0x7fffffff
mov ebx, dword [esp + 0x14]
push ebx
push 0
push dword [esp + 0x8c]
call fcn.004a5c60
push 1
push edi
push 0x45
push esi
call fcn.004d4a60
push ebx
push 0x3c
push esi
call fcn.004d4a00
push 1
push 0x50
push esi
mov edi, eax
call fcn.004d4a00
push 0xffffffffffffffff
push 1
push 0x52
push esi
call fcn.004d4a60
add esp, 0x44
push edi
push 1
push 0x30
push esi
call fcn.004d4a60
push edi
push esi
call fcn.004dd090
add esp, 0x18
jmp 0x4c754e
test edx, edx
jne 0x4c79f9
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x50]
jmp 0x4c7542
push edx
call fcn.004a4f40
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x50], eax
mov eax, dword [ebp + 0xc]
push dword [eax + 0x50]
push dword [ebp + 4]
call fcn.004a9630
jmp 0x4c754b
test edx, edx
jne 0x4c7a43
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x20]
and eax, 0x20
or eax, edx
jne 0x4c7a31
xor eax, eax
jmp 0x4c7542
push 0
push dword [ebp + 4]
call fcn.004a9840
add esp, 8
jmp 0x4c7542
lea eax, [esp + 0x44]
mov dword [esp + 0x44], 1
push eax
push edx
call fcn.004be340
mov esi, dword [esp + 0x4c]
add esp, 8
test eax, eax
je 0x4c7a6d
push esi
push dword [ebp + 4]
call fcn.004a9840
add esp, 8
test esi, esi
setne al
movzx eax, al
push eax
push dword [esp + 0x1c]
call fcn.004be230
mov ecx, dword [esp + 0x18]
add esp, 8
test al, al
mov eax, dword [ecx + 0x24]
mov dword [ecx + 0x24], eax
je 0x4c7aa2
or dword [ecx + 0x20], 0x20
push ecx
call fcn.004a27f0
add esp, 4
jmp 0x4c754e
and dword [ecx + 0x20], 0xffffffdf
push ecx
call fcn.004a27f0
add esp, 4
jmp 0x4c754e
test edx, edx
je 0x4c7b58
lea eax, [esp + 0x64]
push eax
push edx
call fcn.004ad690
mov edx, dword [esp + 0x70]
add esp, 8
test edx, edx
jg 0x4c7af2
jl 0x4c7adc
mov ecx, dword [esp + 0x64]
test ecx, ecx
jae 0x4c7af6
mov ecx, dword [0x52e380]
mov edx, dword [0x52e384]
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], edx
jmp 0x4c7af6
mov ecx, dword [esp + 0x64]
cmp dword [edi + 4], 0
mov eax, dword [esp + 0x10]
jne 0x4c7b06
mov dword [eax + 0x30], ecx
mov dword [eax + 0x34], edx
mov edi, dword [eax + 0x14]
dec edi
js 0x4c7b5c
mov esi, dword [esp + 0x8c]
mov ebx, edi
mov ebp, dword [esp + 0x14]
shl ebx, 4
lea esp, [esp]
mov eax, dword [eax + 0x10]
mov eax, dword [ebx + eax + 4]
test eax, eax
je 0x4c7b48
cmp edi, ebp
je 0x4c7b35
cmp dword [esi + 4], 0
jne 0x4c7b48
push edx
push ecx
push eax
call fcn.004a96c0
mov edx, dword [esp + 0x74]
add esp, 0xc
mov ecx, dword [esp + 0x64]
mov eax, dword [esp + 0x10]
sub ebx, 0x10
dec edi
jns 0x4c7b20
mov esi, dword [esp + 0x2c]
jmp 0x4c7b5c
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x1c]
lea ecx, [esp + 0x64]
push ecx
push 0x12
push ebx
push eax
mov dword [esp + 0x74], 0xffffffff
mov dword [esp + 0x78], 0xffffffff
call fcn.00460540
add esp, 0x10
test eax, eax
jne 0x4c7b92
push dword [esp + 0x68]
push dword [esp + 0x68]
jmp 0x4c7545
mov ebp, dword [esp + 0x10]
cmp eax, 0xc
je 0x4c7552
mov ecx, dword [esp + 0x84]
inc dword [ecx + 0x24]
mov dword [ecx + 0xc], eax
jmp 0x4c7552
test edx, edx
jne 0x4c7bc2
mov eax, dword [esp + 0x10]
movzx eax, byte [eax + 0x50]
jmp 0x4c7542
push edx
push dword [esp + 0x88]
call fcn.00470be0
add esp, 8
jmp 0x4c754e
test edx, edx
jne 0x4c7bef
push dword [0x530bd8]
push esi
call fcn.004a0590
add esp, 8
jmp 0x4c754e
cmp byte [edx], 0
je 0x4c7c2e
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x50]
push ecx
push 1
push edx
mov eax, dword [eax]
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x4c7c15
cmp dword [esp + 0x50], eax
jne 0x4c7c2e
push str.not_a_writable_directory
push dword [esp + 0x88]
call fcn.004af3d0
add esp, 8
jmp 0x4c754e
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x50], 1
ja 0x4c7c47
push dword [esp + 0x84]
call fcn.00491770
add esp, 4
push dword [0x530bd8]
call fcn.0045d750
mov eax, dword [esp + 0x1c]
add esp, 4
cmp byte [eax], 0
je 0x4c7c76
push eax
push 0x5178b0
call fcn.0045d2a0
add esp, 8
mov dword [0x530bd8], eax
jmp 0x4c754e
mov dword [0x530bd8], 0
jmp 0x4c754e
test edx, edx
jne 0x4c7c9d
push dword [0x530bdc]
push esi
call fcn.004a0590
add esp, 8
jmp 0x4c754e
cmp byte [edx], 0
je 0x4c7ccb
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x50]
push ecx
push 1
push edx
mov eax, dword [eax]
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x4c7c15
cmp dword [esp + 0x50], eax
je 0x4c7c15
push dword [0x530bdc]
call fcn.0045d750
mov eax, dword [esp + 0x1c]
add esp, 4
cmp byte [eax], 0
je 0x4c7cfa
push eax
push 0x5178b0
call fcn.0045d2a0
add esp, 8
mov dword [0x530bdc], eax
jmp 0x4c754e
mov dword [0x530bdc], 0
jmp 0x4c754e
test edx, edx
jne 0x4c7d17
movzx eax, byte [ebp + 8]
dec eax
jmp 0x4c7542
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x4f], 0
jne 0x4c7d3a
push str.Safety_level_may_not_be_changed_inside_a_transaction
push dword [esp + 0x88]
call fcn.004af3d0
add esp, 8
jmp 0x4c754e
cmp dword [esp + 0x14], 1
je 0x4c96a8
push 1
push 0
push edx
call fcn.004903f0
inc eax
add esp, 0xc
and eax, 7
jne 0x4c7d5d
mov eax, 1
push dword [esp + 0x10]
mov byte [ebp + 8], al
mov byte [ebp + 9], 1
call fcn.004a27f0
add esp, 4
jmp 0x4c754e
test edx, edx
jne 0x4c7da5
push ebx
push esi
call fcn.004a2a50
mov edx, dword [esp + 0x18]
add esp, 8
mov ecx, dword [ebx + 8]
mov eax, dword [ebx + 0xc]
and ecx, dword [edx + 0x20]
and eax, dword [edx + 0x24]
or ecx, eax
je 0x4c7a2a
mov eax, 1
jmp 0x4c7542
mov eax, dword [esp + 0x10]
mov ebp, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
cmp byte [eax + 0x4f], 0
jne 0x4c7dbb
and ebp, 0xffffbfff
push 0
push edx
call fcn.004be230
add esp, 8
test al, al
je 0x4c7dd6
mov eax, dword [esp + 0x10]
or dword [eax + 0x20], ebp
or dword [eax + 0x24], edi
jmp 0x4c7e00
mov edx, dword [esp + 0x10]
mov ecx, ebp
mov eax, edi
not ecx
not eax
and dword [edx + 0x20], ecx
and dword [edx + 0x24], eax
cmp ebp, 0x80000
jne 0x4c7e00
test edi, edi
jne 0x4c7e00
mov dword [edx + 0x1f0], edi
mov dword [edx + 0x1f4], edi
push 0x9e
push esi
call fcn.004d49b0
push dword [esp + 0x18]
call fcn.004a27f0
jmp 0x4c754b
test edx, edx
je 0x4c754e
mov ebp, dword [esp + 0x1c]
mov edi, dword [esp + 0x84]
push ebp
push edi
call fcn.004aafd0
push ebp
push dword [esp + 0x24]
push 2
push edi
call fcn.004c2920
mov ebp, eax
add esp, 0x18
mov dword [esp + 0x4c], ebp
test ebp, ebp
je 0x4c754e
push ebp
mov dword [esp + 0x48], 0
call fcn.004c9c30
push ebp
push edi
mov dword [esp + 0x5c], eax
mov dword [edi + 0x2c], 7
call fcn.004e0750
mov edx, dword [ebp + 4]
add esp, 0xc
movsx ebp, word [ebp + 0x2a]
mov dword [esp + 0x38], 0
mov dword [esp + 0x30], edx
test ebp, ebp
jle 0x4c754e
nop
movzx ecx, word [edx + 0x10]
xor edi, edi
test cl, 0x62
je 0x4c7ec4
mov eax, dword [ebx + 8]
or eax, dword [ebx + 0xc]
jne 0x4c7eac
inc dword [esp + 0x44]
jmp 0x4c7f62
test cl, 0x20
je 0x4c7eb8
mov edi, 2
jmp 0x4c7ec4
movzx edi, cl
and edi, 0x40
or edi, 0x20
shr edi, 5
test cl, 1
jne 0x4c7ecd
xor ecx, ecx
jmp 0x4c7ef6
mov eax, dword [esp + 0x50]
mov ecx, 1
test eax, eax
je 0x4c7ef6
cmp ebp, ecx
jl 0x4c7ef6
mov edx, dword [eax + 4]
movsx eax, word [edx]
cmp eax, dword [esp + 0x38]
je 0x4c7ef2
inc ecx
add edx, 2
cmp ecx, ebp
jle 0x4c7ee1
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 4]
test eax, eax
je 0x4c7f0b
cmp edi, 2
jge 0x4c7f0b
mov ebp, dword [eax + 8]
mov dword [esp + 0x40], ebp
jmp 0x4c7f13
mov dword [esp + 0x40], 0
mov eax, dword [ebx + 8]
mov ebp, str.issisii
or eax, dword [ebx + 0xc]
jne 0x4c7f25
mov ebp, str.issisi
push edi
xor eax, eax
cmp byte [edx + 0xc], al
push ecx
push dword [esp + 0x48]
setne al
push eax
push 0x515374
push edx
call fcn.004ab280
add esp, 8
push eax
mov eax, dword [esp + 0x44]
push dword [eax]
mov eax, dword [esp + 0x50]
sub eax, dword [esp + 0x5c]
push eax
push ebp
push 1
push esi
call fcn.004dec00
mov edx, dword [esp + 0x58]
add esp, 0x28
mov ecx, dword [esp + 0x4c]
add edx, 0x14
mov eax, dword [esp + 0x38]
inc eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x38], eax
movsx ebp, word [ecx + 0x2a]
cmp eax, ebp
jl 0x4c7e90
jmp 0x4c754e
test edx, edx
je 0x4c754e
mov edi, dword [esp + 0x1c]
push edi
push edx
push dword [esp + 0x18]
call fcn.004b4c70
mov ebp, eax
add esp, 0xc
test ebp, ebp
jne 0x4c7fe5
push edi
push dword [esp + 0x1c]
mov edi, dword [esp + 0x8c]
push 2
push edi
call fcn.004c2920
add esp, 0x10
test eax, eax
je 0x4c754e
test byte [eax + 0x24], 0x80
je 0x4c754e
push eax
call fcn.004c9c30
mov ebp, eax
add esp, 4
test ebp, ebp
je 0x4c754e
jmp 0x4c7fec
mov edi, dword [esp + 0x84]
push dword [ebp + 0x18]
push dword [esp + 0x14]
call fcn.004cc310
mov ecx, dword [ebx + 8]
add esp, 8
or ecx, dword [ebx + 0xc]
mov edx, eax
je 0x4c8012
movzx eax, word [ebp + 0x34]
mov dword [edi + 0x2c], 6
jmp 0x4c801d
movzx eax, word [ebp + 0x32]
mov dword [edi + 0x2c], 3
push edx
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0xc]
push edi
mov dword [esp + 0x58], eax
call fcn.004ab040
xor edi, edi
add esp, 8
cmp dword [esp + 0x44], edi
jle 0x4c754e
mov edi, edi
mov eax, dword [ebp + 4]
movzx edx, word [eax + edi*2]
test dx, dx
jns 0x4c8050
xor eax, eax
jmp 0x4c8060
movsx eax, dx
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x50]
mov eax, dword [eax + 4]
mov eax, dword [eax + ecx*4]
push eax
movsx eax, dx
push eax
push edi
push str.iisX
push 1
push esi
call fcn.004dec00
mov eax, dword [ebx + 8]
add esp, 0x18
or eax, dword [ebx + 0xc]
je 0x4c80a8
movzx eax, word [ebp + 0x32]
xor ecx, ecx
cmp edi, eax
mov eax, dword [ebp + 0x20]
setl cl
push ecx
push dword [eax + edi*4]
mov eax, dword [ebp + 0x1c]
movzx eax, byte [eax + edi]
push eax
push str.isiX
push 4
push esi
call fcn.004dec00
add esp, 0x18
mov eax, dword [esp + 0x84]
push dword [eax + 0x2c]
push 1
push 0x50
push esi
call fcn.004d4a60
inc edi
add esp, 0x10
cmp edi, dword [esp + 0x44]
jl 0x4c8040
jmp 0x4c754e
test edx, edx
je 0x4c754e
mov ebx, dword [esp + 0x1c]
push ebx
push edx
push dword [esp + 0x18]
call fcn.004b4d40
mov edi, eax
add esp, 0xc
test edi, edi
je 0x4c754e
push dword [edi + 0x48]
push dword [esp + 0x14]
call fcn.004cc310
mov ecx, dword [esp + 0x8c]
push eax
push ecx
mov dword [ecx + 0x2c], 5
call fcn.004ab040
mov edi, dword [edi + 8]
add esp, 0x10
xor ebx, ebx
test edi, edi
je 0x4c754e
mov dword [esp + 0x64], 0x52874c
mov dword [esp + 0x68], 0x528750
mov dword [esp + 0x6c], 0x5253f0
lea esp, [esp]
xor eax, eax
cmp dword [edi + 0x24], eax
setne al
push eax
mov eax, dword [edi + 0x38]
and eax, 3
push dword [esp + eax*4 + 0x68]
xor eax, eax
cmp byte [edi + 0x36], al
setne al
push eax
push dword [edi]
push ebx
push str.isisi
push 1
push esi
call fcn.004dec00
mov edi, dword [edi + 0x14]
add esp, 0x20
inc ebx
test edi, edi
jne 0x4c8140
jmp 0x4c754e
mov eax, dword [esp + 0x84]
xor edi, edi
mov ebp, dword [esp + 0x10]
mov dword [eax + 0x2c], 3
cmp dword [ebp + 0x14], edi
jle 0x4c7552
xor ebx, ebx
jmp 0x4c81a0
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + ebx + 4]
test eax, eax
je 0x4c81c6
push eax
call fcn.004a7610
push eax
push dword [ecx + ebx]
push edi
push 0x52875c
push 1
push esi
call fcn.004dec00
add esp, 0x1c
inc edi
add ebx, 0x10
cmp edi, dword [ebp + 0x14]
jl 0x4c81a0
jmp 0x4c7552
mov eax, dword [esp + 0x84]
xor ebx, ebx
mov edi, dword [esp + 0x10]
mov dword [eax + 0x2c], 2
mov edi, dword [edi + 0x19c]
test edi, edi
je 0x4c754e
mov eax, dword [edi + 8]
push dword [eax]
push ebx
push 0x528760
push 1
push esi
call fcn.004dec00
mov edi, dword [edi]
add esp, 0x14
inc ebx
test edi, edi
jne 0x4c81f6
jmp 0x4c754e
mov eax, dword [esp + 0x10]
mov ebp, 0x530ca8
mov ebx, dword [eax + 0x18]
mov eax, dword [esp + 0x84]
shr ebx, 5
and ebx, 1
mov dword [eax + 0x2c], 6
mov edi, dword [ebp]
test edi, edi
je 0x4c8254
nop
push ebx
push 1
push edi
push esi
call fcn.0049b9d0
mov edi, dword [edi + 0x24]
add esp, 0x10
test edi, edi
jne 0x4c8240
add ebp, 4
cmp ebp, 0x530d04
jl 0x4c8238
mov edi, dword [esp + 0x10]
mov edi, dword [edi + 0x18c]
test edi, edi
je 0x4c754e
push ebx
push 0
push dword [edi + 8]
push esi
call fcn.0049b9d0
mov edi, dword [edi]
add esp, 0x10
test edi, edi
jne 0x4c8271
jmp 0x4c754e
mov eax, dword [esp + 0x84]
mov edi, dword [esp + 0x10]
mov dword [eax + 0x2c], 1
mov edi, dword [edi + 0x170]
test edi, edi
je 0x4c754e
jmp 0x4c82b0
mov eax, dword [edi + 8]
push dword [eax + 4]
push 0x5286c0
push 1
push esi
call fcn.004dec00
mov edi, dword [edi]
add esp, 0x10
test edi, edi
jne 0x4c82b0
jmp 0x4c754e
mov edi, 0x523398
push dword [edi]
push 0x5286c0
push 1
push esi
call fcn.004dec00
add edi, 0x10
add esp, 0x10
cmp edi, 0x5237b8
jl 0x4c82d6
jmp 0x4c754e
test edx, edx
je 0x4c754e
mov ebx, dword [esp + 0x1c]
push ebx
push edx
push dword [esp + 0x18]
call fcn.004b4d40
add esp, 0xc
mov dword [esp + 0x50], eax
test eax, eax
je 0x4c754e
mov edi, dword [eax + 0x10]
test edi, edi
je 0x4c754e
push dword [eax + 0x48]
push dword [esp + 0x14]
call fcn.004cc310
mov ecx, dword [esp + 0x8c]
xor ebp, ebp
push eax
push ecx
mov dword [esp + 0x54], ebp
mov dword [ecx + 0x2c], 8
call fcn.004ab040
add esp, 0x10
xor ebx, ebx
cmp dword [edi + 0x14], ebx
jle 0x4c83b9
lea ebp, [edi + 0x24]
lea ecx, [ecx]
movzx eax, byte [edi + 0x19]
push str.NONE
push eax
call fcn.0046a840
add esp, 4
push eax
movzx eax, byte [edi + 0x1a]
push eax
call fcn.0046a840
add esp, 4
push eax
mov eax, dword [ebp]
push dword [ebp + 4]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x60]
mov eax, dword [eax + 4]
push dword [eax + ecx*4]
push dword [edi + 8]
push ebx
push dword [esp + 0x60]
push str.iissssss
push 1
push esi
call fcn.004dec00
inc ebx
lea ebp, [ebp + 8]
add esp, 0x2c
cmp ebx, dword [edi + 0x14]
jl 0x4c8360
mov ebp, dword [esp + 0x44]
mov edi, dword [edi + 4]
inc ebp
mov dword [esp + 0x44], ebp
test edi, edi
jne 0x4c8353
jmp 0x4c754e
mov edx, dword [esp + 0x84]
mov eax, dword [edx + 0x2c]
lea ecx, [eax + 1]
lea ebp, [eax + 6]
mov dword [esp + 0x30], ecx
lea ecx, [eax + 5]
mov dword [edx + 0x2c], ebp
mov eax, dword [esp + 0x10]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x14], ebp
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx + 0xc]
mov eax, dword [eax + 0x10]
test eax, eax
je 0x4c754e
mov ebx, dword [esp + 0x1c]
lea ebx, [ebx]
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x4c842b
push ebx
push ecx
push 0
push edx
call fcn.004c2920
add esp, 0x10
mov edi, eax
xor eax, eax
jmp 0x4c8430
mov edi, dword [eax + 8]
mov eax, dword [eax]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], edi
test edi, edi
je 0x4c8783
cmp dword [edi + 0x10], 0
je 0x4c8783
push dword [edi + 0x48]
push dword [esp + 0x14]
call fcn.004cc310
mov ebx, eax
mov eax, dword [esp + 0x18]
mov edx, ebx
mov dword [esp + 0x4c], ebx
add edx, edx
push ebx
mov ecx, dword [eax + 0x10]
push dword [esp + 0x90]
mov eax, dword [ecx + edx*8]
mov dword [esp + 0x2c], eax
call fcn.004ab040
push dword [edi]
push 0
push dword [edi + 0x1c]
push ebx
push dword [esp + 0xa4]
call fcn.004d05b0
mov ecx, dword [esp + 0xa8]
add esp, 0x24
movsx eax, word [edi + 0x2a]
add eax, ebp
cmp eax, dword [ecx + 0x2c]
jle 0x4c84a7
mov dword [ecx + 0x2c], eax
push 0x60
push edi
push ebx
push 0
push ecx
call fcn.004c38e0
push dword [edi]
push dword [esp + 0x48]
push esi
call fcn.004dd3a0
mov ebx, dword [edi + 0x10]
add esp, 0x20
mov ebp, 1
test ebx, ebx
je 0x4c8582
push dword [esp + 0x1c]
push dword [ebx + 8]
push dword [esp + 0x18]
call fcn.004b4d40
mov edi, eax
add esp, 0xc
test edi, edi
je 0x4c8572
push dword [edi]
mov dword [esp + 0x2c], 0
push 0
push dword [edi + 0x1c]
push dword [esp + 0x50]
push dword [esp + 0x94]
call fcn.004d05b0
push 0
lea eax, [esp + 0x40]
push eax
push ebx
push edi
push dword [esp + 0xa8]
call fcn.004b6420
add esp, 0x28
test eax, eax
jne 0x4c754e
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x4c854f
push 0x60
push edi
push dword [esp + 0x4c]
push ebp
push dword [esp + 0x94]
call fcn.004c38e0
add esp, 0x14
jmp 0x4c8572
push dword [esp + 0x44]
push dword [eax + 0x2c]
push ebp
push 0x60
push esi
call fcn.004d4ac0
push dword [esp + 0x3c]
push dword [esp + 0x9c]
call fcn.004dfb70
add esp, 0x1c
mov ebx, dword [ebx + 4]
inc ebp
test ebx, ebx
jne 0x4c84d2
mov edi, dword [esp + 0x38]
mov eax, dword [esp + 0x84]
cmp dword [eax + 0x28], ebp
jge 0x4c8591
mov dword [eax + 0x28], ebp
push 0
push 0x25
push esi
call fcn.004d4a00
mov ebp, dword [edi + 0x10]
add esp, 0xc
mov dword [esp + 0x24], 1
mov ebx, eax
mov dword [esp + 0x48], ebx
test ebp, ebp
je 0x4c875f
jmp 0x4c85c0
push dword [esp + 0x1c]
push dword [ebp + 8]
push dword [esp + 0x18]
call fcn.004b4d40
xor ecx, ecx
mov dword [esp + 0x58], eax
add esp, 0xc
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], ecx
test eax, eax
je 0x4c8608
lea ecx, [esp + 0x2c]
push ecx
lea ecx, [esp + 0x2c]
push ecx
push ebp
push eax
push dword [esp + 0x94]
call fcn.004b6420
mov ecx, dword [esp + 0x40]
add esp, 0x14
mov eax, dword [esp + 0x84]
xor edi, edi
dec dword [eax + 0x38]
mov ebx, dword [eax + 0x38]
mov dword [esp + 0x40], ebx
cmp dword [ebp + 0x14], edi
jle 0x4c8673
mov ebx, dword [esp + 0x14]
lea eax, [ebp + 0x24]
mov dword [esp + 0x44], eax
jmp 0x4c8630
test ecx, ecx
je 0x4c8639
mov eax, dword [ecx + edi*4]
jmp 0x4c863b
mov eax, dword [eax]
push ebx
push eax
push 0
push dword [esp + 0x44]
push esi
call fcn.004b0240
push dword [esp + 0x54]
push ebx
push 0x32
push esi
call fcn.004d4a60
mov eax, dword [esp + 0x68]
inc edi
mov ecx, dword [esp + 0x50]
add eax, 8
add esp, 0x24
mov dword [esp + 0x44], eax
inc ebx
cmp edi, dword [ebp + 0x14]
jl 0x4c8630
mov ebx, dword [esp + 0x40]
mov eax, dword [esp + 0x28]
test eax, eax
je 0x4c86b6
push dword [ebp + 0x14]
push eax
push dword [esp + 0x18]
call fcn.004bf730
mov edi, dword [esp + 0x5c]
add esp, 8
push eax
push edi
push dword [ebp + 0x14]
push dword [esp + 0x24]
push 0x5b
push esi
call fcn.004d4b20
push 0
push edi
mov edi, dword [esp + 0x48]
push ebx
push edi
push 0x1e
push esi
call fcn.004d4bf0
add esp, 0x34
jmp 0x4c86df
cmp dword [esp + 0x4c], 0
mov edi, dword [esp + 0x24]
je 0x4c86df
push dword [esp + 0x14]
mov eax, dword [esi + 0x6c]
add eax, 2
push eax
push edi
push 0x1f
push esi
call fcn.004d4ac0
push ebx
push esi
call fcn.004dca10
add esp, 0x1c
mov eax, dword [esp + 0x38]
test byte [eax + 0x24], 0x80
mov eax, dword [esp + 0x30]
jne 0x4c86f5
inc eax
push eax
push 0
push 0x7f
jmp 0x4c86fb
inc eax
push eax
push 0
push 0x48
push esi
call fcn.004d4a60
add esp, 0x10
lea eax, [edi - 1]
push eax
push dword [ebp + 8]
mov eax, dword [esp + 0x38]
push 0x528778
add eax, 2
push eax
push esi
call fcn.004dec00
push 4
push dword [esp + 0x48]
push 0x50
push esi
call fcn.004d4a60
push ebx
push esi
call fcn.004df7c0
mov eax, dword [esp + 0x58]
add esp, 0x2c
test eax, eax
je 0x4c874b
push eax
push dword [esp + 0x14]
call fcn.004ad230
add esp, 8
mov ebp, dword [ebp + 4]
inc edi
mov dword [esp + 0x24], edi
test ebp, ebp
jne 0x4c85c0
mov ebx, dword [esp + 0x48]
lea eax, [ebx + 1]
push eax
push 0
push 5
push esi
call fcn.004d4a60
push ebx
push esi
call fcn.004dd090
mov ebx, dword [esp + 0x34]
add esp, 0x18
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x84]
test eax, eax
jne 0x4c8410
jmp 0x4c754e
test edx, edx
je 0x4c754e
push 0
push edx
call fcn.004be230
movzx eax, al
push eax
push dword [esp + 0x1c]
call fcn.004ca300
add esp, 0x10
jmp 0x4c754e
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x34]
movzx eax, byte [eax]
cmp byte [eax + 0x523870], 0x71
sete cl
cmp dword [edi], 0
mov dword [esp + 0x3c], ecx
jne 0x4c87e7
or edi, 0xffffffff
mov dword [esp + 0x14], edi
jmp 0x4c87eb
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x84]
mov ebp, 0x64
mov dword [esp + 0x44], ebp
mov dword [esp + 0x40], ebp
mov dword [ebx + 0x2c], 6
test edx, edx
je 0x4c8861
lea eax, [esp + 0x40]
push eax
push edx
call fcn.004be340
add esp, 8
test eax, eax
je 0x4c882f
mov ebp, dword [esp + 0x40]
mov dword [esp + 0x44], ebp
test ebp, ebp
jg 0x4c8861
mov ebp, 0x64
jmp 0x4c885d
test edi, edi
js 0x4c8843
mov eax, dword [esp + 0x10]
mov ecx, edi
add ecx, ecx
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx*8]
jmp 0x4c8845
xor eax, eax
push eax
push dword [esp + 0x1c]
push 0
push ebx
call fcn.004c2920
mov ebp, dword [esp + 0x50]
add esp, 0x10
mov dword [esp + 0x20], eax
mov dword [esp + 0x44], ebp
push 1
lea ecx, [ebp - 1]
push ecx
push 0x45
push esi
call fcn.004d4a60
mov eax, dword [esp + 0x20]
xor ecx, ecx
add esp, 0x10
mov dword [esp + 0x28], ecx
cmp dword [eax + 0x14], ecx
jle 0x4c90c1
xor ebp, ebp
test edi, edi
js 0x4c8893
cmp ecx, edi
jne 0x4c90af
push ecx
push ebx
call fcn.004ab040
mov eax, dword [esp + 0x18]
add esp, 8
mov ecx, dword [esp + 0x28]
xor edx, edx
shl ecx, 4
mov dword [esp + 0x50], ecx
mov eax, dword [eax + 0x10]
mov ebx, dword [ecx + eax + 0xc]
add ebx, 8
mov dword [esp + 0x48], ebx
mov edi, dword [ebx + 8]
test edi, edi
je 0x4c909c
mov ecx, dword [esp + 0x20]
jmp 0x4c88d0
mov eax, dword [edi + 8]
test ecx, ecx
je 0x4c88db
cmp ecx, eax
jne 0x4c8903
test byte [eax + 0x24], 0x80
jne 0x4c88e2
inc edx
mov eax, dword [eax + 8]
xor ecx, ecx
test eax, eax
je 0x4c88f9
jmp 0x4c88f0
mov eax, dword [eax + 0x14]
inc edx
inc ecx
test eax, eax
jne 0x4c88f0
cmp ecx, ebp
jle 0x4c88ff
mov ebp, ecx
mov ecx, dword [esp + 0x20]
mov edi, dword [edi]
test edi, edi
jne 0x4c88d0
test edx, edx
je 0x4c909c
test ecx, ecx
je 0x4c8916
inc edx
lea eax, [edx*4 + 4]
push 0
push eax
push dword [esp + 0x18]
call fcn.004ad310
mov edi, eax
add esp, 0xc
test edi, edi
je 0x4c90bd
mov eax, dword [esp + 0x20]
xor edx, edx
test eax, eax
je 0x4c894c
mov edx, 1
mov dword [edi + 4], 0
mov ebx, dword [ebx + 8]
test ebx, ebx
je 0x4c898e
mov esi, dword [esp + 0x20]
mov ecx, dword [ebx + 8]
test esi, esi
je 0x4c8962
cmp esi, ecx
jne 0x4c8984
test byte [ecx + 0x24], 0x80
jne 0x4c896f
mov eax, dword [ecx + 0x1c]
inc edx
mov dword [edi + edx*4], eax
mov ecx, dword [ecx + 8]
test ecx, ecx
je 0x4c8984
mov eax, dword [ecx + 0x2c]
inc edx
mov dword [edi + edx*4], eax
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x4c8976
mov ebx, dword [ebx]
test ebx, ebx
jne 0x4c8957
mov esi, dword [esp + 0x2c]
mov eax, dword [esp + 0x84]
lea ecx, [ebp + 8]
mov dword [edi], edx
mov eax, dword [eax + 0x2c]
cmp eax, ecx
jg 0x4c89a3
mov eax, ecx
mov ebp, dword [esp + 0x84]
push 0xfffffffffffffff1
push edi
push 1
push edx
push 2
push 0x92
push esi
mov dword [ebp + 0x2c], eax
mov byte [ebp + 0x13], 0
mov dword [ebp + 0x1c], 0
call fcn.004d4b20
mov eax, dword [esp + 0x44]
movzx eax, al
push eax
push esi
call fcn.004d5030
push 2
push 0x32
push esi
call fcn.004d4a00
mov edx, dword [esp + 0x40]
add esp, 0x30
mov edi, eax
mov eax, dword [esp + 0x50]
mov ecx, dword [edx + 0x10]
push 0xfffffffffffffff9
push dword [eax + ecx]
push str._in_database__s__n
push edx
call fcn.004c2dc0
add esp, 0xc
push eax
push 0
push 3
push 0
push 0x73
push esi
call fcn.004d4b20
push 3
push 3
push 2
push 0x6e
push esi
call fcn.004d4ac0
push esi
call fcn.004915f0
push edi
push esi
call fcn.004dd090
mov eax, dword [esp + 0x84]
add esp, 0x3c
mov ebx, dword [eax + 8]
mov dword [esp + 0x50], ebx
test ebx, ebx
je 0x4c9122
lea esp, [esp]
mov ebx, dword [ebx + 8]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x48], 0
mov dword [esp + 0x38], 0xffffffff
cmp dword [ebx + 0x1c], 1
jb 0x4c908a
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4c8a81
cmp eax, ebx
jne 0x4c908a
test byte [ebx + 0x24], 0x80
jne 0x4c8a91
mov dword [esp + 0x24], 0
jmp 0x4c8a9e
push ebx
call fcn.004c9c30
add esp, 4
mov dword [esp + 0x24], eax
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x44]
push eax
push 0
push 1
push 0
push 0x60
push ebx
push ebp
call fcn.004c3a10
push 7
push 0
push 0x45
push esi
call fcn.004d4a60
mov edi, dword [ebx + 8]
add esp, 0x30
test edi, edi
je 0x4c8aec
mov ebx, 8
push ebx
push 0
push 0x45
push esi
call fcn.004d4a60
mov edi, dword [edi + 0x14]
add esp, 0x10
inc ebx
test edi, edi
jne 0x4c8ad2
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x40]
push 0
push edi
push 0x25
push esi
call fcn.004d4a60
push 1
push 7
push 0x52
push esi
call fcn.004d4a60
add esp, 0x20
mov dword [esp + 0x64], eax
cmp dword [esp + 0x3c], 0
jne 0x4c8b34
movsx ecx, word [ebx + 0x2c]
push 3
dec ecx
push ecx
push edi
push 0x59
push esi
call fcn.004d4ac0
push pe_nt_image_headers32
push esi
call fcn.004d5030
add esp, 0x1c
mov edx, dword [esp + 0x1c]
xor eax, eax
xor ebx, ebx
cmp ax, word [edx + 0x2a]
jge 0x4c8bf5
xor ebp, ebp
jmp 0x4c8b50
movsx eax, word [edx + 0x28]
cmp ebx, eax
je 0x4c8bde
mov eax, dword [edx + 4]
cmp byte [eax + ebp + 0xc], 0
je 0x4c8bde
push 3
push ebx
push edi
push edx
push esi
call fcn.004b0240
push 0xffffffffffffffff
push esi
call fcn.004dc9e0
add esp, 0x1c
cmp byte [eax], 0x59
jne 0x4c8b8f
push pe_nt_image_headers32
push esi
call fcn.004d5030
add esp, 8
push 3
push 0x33
push esi
call fcn.004d4a00
mov edi, eax
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 4]
push dword [ecx + ebp]
push dword [eax]
push str.NULL_value_in__s._s
push dword [esp + 0x28]
call fcn.004c2dc0
push 0xfffffffffffffff9
push eax
push 0
push 3
push 0
push 0x73
push esi
call fcn.004d4b20
push esi
call fcn.004915f0
push edi
push esi
call fcn.004dd090
mov edx, dword [esp + 0x60]
add esp, 0x44
mov edi, dword [esp + 0x40]
movsx eax, word [edx + 0x2a]
inc ebx
add ebp, 0x14
cmp ebx, eax
jl 0x4c8b50
mov ebp, dword [esp + 0x84]
mov ecx, dword [edx + 0x18]
test ecx, ecx
je 0x4c8cf7
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x20]
and eax, 0x200
or eax, 0
jne 0x4c8cf7
push eax
push ecx
push ebx
call fcn.004b3ba0
mov ebx, eax
add esp, 0xc
mov eax, dword [esp + 0x10]
mov dword [esp + 0x30], ebx
cmp byte [eax + 0x51], 0
jne 0x4c8ce5
mov ebp, dword [ebp + 0x38]
mov ecx, dword [esp + 0x84]
dec ebp
lea eax, [ebp - 1]
mov dword [ecx + 0x38], eax
lea eax, [edi + 1]
mov dword [ecx + 0x34], eax
mov edi, dword [ebx]
dec edi
test edi, edi
jle 0x4c8c85
lea eax, [edi + edi*4]
mov esi, ecx
lea ebx, [ebx + eax*4]
add ebx, 4
lea ecx, [ecx]
push 0
push ebp
push dword [ebx]
push esi
call fcn.004b2d40
dec edi
lea ebx, [ebx - 0x14]
add esp, 0x10
test edi, edi
jg 0x4c8c60
mov esi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x30]
mov ecx, dword [esp + 0x84]
push 0x10
lea edi, [ebp - 1]
push edi
push dword [ebx + 4]
push ecx
call fcn.004b3170
push ebp
push esi
call fcn.004df7c0
mov ebp, dword [esp + 0x9c]
mov eax, dword [esp + 0x34]
mov dword [ebp + 0x34], 0
push dword [eax]
push str.CHECK_constraint_failed_in__s
push dword [esp + 0x30]
call fcn.004c2dc0
push 0xfffffffffffffff9
push eax
push 0
push 3
push 0
push 0x73
push esi
call fcn.004d4b20
add esp, 0x40
push esi
call fcn.004915f0
push edi
push esi
call fcn.004df7c0
mov eax, dword [esp + 0x1c]
add esp, 0xc
test ebx, ebx
je 0x4c8cf3
push ebx
push eax
call fcn.0047a120
add esp, 8
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x3c]
test ebx, ebx
jne 0x4c8f6f
mov ebx, dword [edx + 8]
test ebx, ebx
je 0x4c8f6b
mov ecx, dword [esp + 0x4c]
mov eax, 8
sub eax, ecx
mov dword [esp + 0x30], ecx
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 0x38]
dec edi
mov dword [ebp + 0x38], edi
cmp eax, ebx
je 0x4c8f5c
push dword [esp + 0x38]
lea eax, [esp + 0x64]
push dword [esp + 0x4c]
push eax
push 0
push 0
push dword [esp + 0x54]
push ebx
push ebp
call fcn.004bda30
mov ecx, dword [esp + 0x50]
add ecx, dword [esp + 0x74]
push 1
push ecx
push 0x52
push esi
mov dword [esp + 0x68], eax
mov dword [esp + 0x78], ebx
call fcn.004d4a60
movzx ecx, word [ebx + 0x34]
push ecx
push dword [esp + 0x6c]
push edi
push dword [esp + 0x6c]
push 0x1e
push esi
call fcn.004d4bf0
add esp, 0x48
mov edi, eax
push 0
push str.row
push 0
push 3
push 0
push 0x73
push esi
call fcn.004d4b20
push 3
push 3
push 7
push 0x6e
push esi
call fcn.004d4ac0
push 0
push str._missing_from_index
push 0
push 4
push 0
push 0x73
push esi
call fcn.004d4b20
add esp, 0x4c
push 3
push 3
push 4
push 0x6e
push esi
call fcn.004d4ac0
push 0
push dword [ebx]
push 0
push 4
push 0
push 0x73
push esi
call fcn.004d4b20
push 3
push 3
push 4
push 0x6e
push esi
mov dword [esp + 0x9c], eax
call fcn.004d4ac0
add esp, 0x44
push esi
call fcn.004915f0
push edi
push esi
mov dword [esp + 0x68], eax
call fcn.004dd090
add esp, 0xc
cmp byte [ebx + 0x36], 0
je 0x4c8f01
dec dword [ebp + 0x38]
xor eax, eax
mov ebp, dword [ebp + 0x38]
xor edi, edi
cmp ax, word [ebx + 0x32]
jae 0x4c8e5f
mov eax, dword [ebx + 4]
movsx eax, word [eax + edi*2]
test eax, eax
js 0x4c8e43
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 4]
cmp byte [eax + ecx*4 + 0xc], 0
jne 0x4c8e56
mov eax, dword [esp + 0x38]
push ebp
add eax, edi
push eax
push 0x32
push esi
call fcn.004d4a60
add esp, 0x10
movzx eax, word [ebx + 0x32]
inc edi
cmp edi, eax
jl 0x4c8e27
push dword [esp + 0x30]
push 5
push esi
call fcn.004d4a00
push ebp
push esi
mov edi, eax
call fcn.004dca10
mov edx, dword [esi + 0x6c]
add esp, 0x14
test edi, edi
jns 0x4c8e81
lea edi, [edx - 1]
mov eax, dword [esi]
cmp byte [eax + 0x51], 0
je 0x4c8e90
mov eax, 0x530d04
jmp 0x4c8e99
mov eax, dword [esi + 0x68]
lea ecx, [edi + edi*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
movzx eax, word [ebx + 0x32]
push eax
push dword [esp + 0x3c]
push ebp
push dword [esp + 0x3c]
push 0x27
push esi
call fcn.004d4bf0
push 0
push str.non_unique_entry_in_index
push 0
push 3
push 0
push 0x73
push esi
call fcn.004d4b20
push dword [esp + 0x8c]
push esi
call fcn.004dca10
mov ecx, dword [esi + 0xc]
add esp, 0x3c
not ebp
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x4c8ef1
push ebp
push esi
push ecx
call fcn.0049f060
add esp, 0xc
jmp 0x4c8efa
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi + 0x6c]
mov dword [ecx + ebp*4], eax
mov ebp, dword [esp + 0x84]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esi + 0x6c]
test ecx, ecx
jns 0x4c8f0f
lea ecx, [edx - 1]
mov eax, dword [esi]
cmp byte [eax + 0x51], 0
je 0x4c8f1e
mov eax, 0x530d04
jmp 0x4c8f27
mov eax, dword [esi + 0x68]
lea ecx, [ecx + ecx*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x60]
test edx, edx
je 0x4c8f58
mov edi, dword [ebp + 8]
not edx
mov ecx, dword [edi + 0xc]
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x4c8f4f
push edx
push edi
push ecx
call fcn.0049f060
add esp, 0xc
jmp 0x4c8f58
mov ecx, dword [ecx + 0x40]
mov eax, dword [edi + 0x6c]
mov dword [ecx + edx*4], eax
mov eax, dword [esp + 0x24]
mov ebx, dword [ebx + 0x14]
inc dword [esp + 0x30]
test ebx, ebx
jne 0x4c8d25
mov ebx, dword [esp + 0x3c]
mov edi, dword [esp + 0x64]
push edi
push dword [esp + 0x44]
push 5
push esi
call fcn.004d4a60
mov edx, dword [esi + 0x6c]
lea ecx, [edi - 1]
add esp, 0x10
test ecx, ecx
jns 0x4c8f90
lea ecx, [edx - 1]
mov eax, dword [esi]
cmp byte [eax + 0x51], 0
je 0x4c8f9f
mov eax, 0x530d04
jmp 0x4c8fa8
mov eax, dword [esi + 0x68]
lea ecx, [ecx + ecx*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
test ebx, ebx
jne 0x4c908a
push ebx
push str.wrong__of_entries_in_index
push ebx
push 2
push ebx
push 0x73
push esi
call fcn.004d4b20
mov eax, dword [esp + 0x38]
add esp, 0x1c
mov edi, dword [eax + 8]
test edi, edi
je 0x4c908a
mov eax, dword [esp + 0x24]
lea ebp, [ebx + 8]
mov edi, edi
cmp eax, edi
je 0x4c9077
mov eax, dword [esp + 0x4c]
add eax, 0xfffffff8
push 3
add eax, ebp
push eax
push 0x5c
push esi
call fcn.004d4a60
push 3
push 0
push ebp
push 0x35
push esi
call fcn.004d4ac0
mov ebx, eax
add esp, 0x24
mov eax, dword [esi + 0x6c]
test eax, eax
jle 0x4c9025
mov ecx, dword [esi + 0x68]
lea edx, [eax + eax*4]
mov eax, 0x90
mov word [ecx + edx*4 - 0x12], ax
push 0
push dword [edi]
push 0
push 4
push 0
push 0x73
push esi
call fcn.004d4b20
push 3
push 2
push 4
push 0x6e
push esi
call fcn.004d4ac0
push esi
call fcn.004915f0
mov edx, dword [esi + 0x6c]
add esp, 0x34
test ebx, ebx
jns 0x4c9058
lea ebx, [edx - 1]
mov eax, dword [esi]
cmp byte [eax + 0x51], 0
je 0x4c9067
mov eax, 0x530d04
jmp 0x4c9070
mov eax, dword [esi + 0x68]
lea ecx, [ebx + ebx*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x24]
mov edi, dword [edi + 0x14]
inc ebp
test edi, edi
jne 0x4c8fe0
mov ebp, dword [esp + 0x84]
mov ebx, dword [esp + 0x50]
mov ebx, dword [ebx]
mov dword [esp + 0x50], ebx
test ebx, ebx
jne 0x4c8a50
mov ebx, dword [esp + 0x84]
mov ecx, dword [esp + 0x28]
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
inc ecx
mov dword [esp + 0x28], ecx
cmp ecx, dword [eax + 0x14]
jl 0x4c8885
mov ebp, dword [esp + 0x44]
push 0
push 0x521b84
push 7
push esi
call fcn.004d4c80
add esp, 0x10
test eax, eax
je 0x4c9104
mov edx, dword [str.database_disk_image_is_malformed]
mov ecx, 1
sub ecx, ebp
mov byte [eax + 0x29], 0xff
mov dword [eax + 8], ecx
mov ecx, str.unknown_error
mov dword [eax + 0x38], 0x528824
mov byte [eax + 0x65], 0xff
test edx, edx
je 0x4c9101
mov ecx, edx
mov dword [eax + 0x74], ecx
mov eax, dword [esi]
mov ecx, 0x530d04
mov edx, dword [esi + 0x6c]
cmp byte [eax + 0x51], 0
jne 0x4c9117
mov ecx, dword [esi + 0x68]
lea eax, [edx - 2]
mov dword [ecx + 0xc], eax
jmp 0x4c754e
mov ebx, ebp
jmp 0x4c90a3
test edx, edx
jne 0x4c9160
mov ebx, dword [esp + 0x84]
push ebx
call fcn.004c9d40
add esp, 4
test eax, eax
jne 0x4c754e
mov eax, dword [ebx]
movzx eax, byte [eax + 0x4e]
push dword [eax*8 + 0x522bd0]
push esi
call fcn.004a0590
add esp, 8
jmp 0x4c754e
mov ebp, dword [esp + 0x10]
test byte [ebp + 0x18], 0x40
jne 0x4c7552
mov eax, dword [str.UTF8]
mov esi, 0x522bd0
test eax, eax
je 0x4c91d0
lea esp, [esp]
push eax
push edx
call fcn.004d02b0
add esp, 8
test eax, eax
je 0x4c919e
mov eax, dword [esi + 8]
add esi, 8
mov edx, dword [esp + 0x18]
test eax, eax
jne 0x4c9180
jmp 0x4c91cc
mov cl, byte [esi + 4]
test cl, cl
jne 0x4c91a7
mov cl, 2
mov edx, ebp
mov byte [esp + 0x50], cl
push dword [esp + 0x50]
push edx
mov eax, dword [edx + 0x10]
mov eax, dword [eax + 0xc]
mov byte [eax + 0x4d], cl
call fcn.004cef90
add esp, 8
cmp dword [esi], 0
jne 0x4c7552
mov edx, dword [esp + 0x18]
push edx
push str.unsupported_encoding:__s
push dword [esp + 0x8c]
call fcn.004af3d0
add esp, 0xc
jmp 0x4c7552
mov ebp, dword [esp + 0x14]
mov edi, dword [ebx + 8]
push ebp
push esi
call fcn.004e0670
add esp, 8
cmp dword [esp + 0x18], 0
je 0x4c923f
test byte [ebx + 5], 8
jne 0x4c923f
push 0
push 0x522864
push 2
push esi
call fcn.004d4c80
push dword [esp + 0x28]
mov esi, eax
mov dword [esi + 4], ebp
mov dword [esi + 0x18], ebp
mov dword [esi + 0x1c], edi
call fcn.004a4f40
mov dword [esi + 0x20], eax
add esp, 0x14
mov eax, 1
mov word [esi + 0x16], ax
jmp 0x4c754e
push 0
push 0x52286c
push 3
push esi
call fcn.004d4c80
add esp, 0x10
mov dword [eax + 4], ebp
mov dword [eax + 0x18], ebp
mov dword [eax + 0x20], edi
and dword [esi + 0x98], 0xffffffdf
jmp 0x4c754e
mov eax, dword [esp + 0x84]
xor edi, edi
push edi
mov dword [eax + 0x2c], 1
call fcn.004582e0
add esp, 4
test eax, eax
je 0x4c92a6
push eax
push 1
push esi
inc edi
call fcn.004dd3a0
push 1
push 1
push 0x50
push esi
call fcn.004d4a60
push edi
call fcn.004582e0
add esp, 0x20
test eax, eax
jne 0x4c9283
and dword [esi + 0x98], 0xffffffdf
jmp 0x4c754e
cmp dword [edi], 0
mov ebx, dword [esp + 0x14]
jne 0x4c92c0
mov ebx, 0xa
xor edi, edi
test edx, edx
je 0x4c930f
push str.full
push edx
call fcn.004d02b0
add esp, 8
test eax, eax
jne 0x4c92dd
lea edi, [eax + 1]
jmp 0x4c930f
mov ebp, dword [esp + 0x18]
push str.restart
push ebp
call fcn.004d02b0
add esp, 8
test eax, eax
jne 0x4c92f8
lea edi, [eax + 2]
jmp 0x4c930f
push str.truncate
push ebp
call fcn.004d02b0
add esp, 8
test eax, eax
jne 0x4c930f
mov edi, 3
mov eax, dword [esp + 0x84]
push 1
push edi
push ebx
push 6
push esi
mov dword [eax + 0x2c], 3
call fcn.004d4ac0
push 3
push 1
push 0x50
push esi
call fcn.004d4a60
add esp, 0x24
jmp 0x4c754e
test edx, edx
je 0x4c9354
push edx
call fcn.004a4f40
push eax
push dword [esp + 0x18]
call fcn.00466f80
add esp, 0xc
mov eax, dword [esp + 0x10]
cmp dword [eax + 0xf8], 0x4e2040
jne 0x4c7a2a
mov eax, dword [eax + 0xfc]
jmp 0x4c7542
push dword [esp + 0x10]
call fcn.00459ac0
add esp, 4
jmp 0x4c754e
test edx, edx
je 0x4c93a2
push edx
call fcn.004a4f40
mov ecx, eax
add esp, 4
mov dword [esp + 0x40], ecx
test cl, 2
je 0x4c754e
jmp 0x4c93aa
mov dword [esp + 0x40], 0xfffe
mov edx, dword [esp + 0x84]
mov ebp, dword [esp + 0x14]
mov eax, dword [edx + 0x28]
mov dword [esp + 0x50], eax
inc eax
cmp dword [esp + 0x1c], 0
mov dword [edx + 0x28], eax
je 0x4c93cd
mov dword [esp + 0x44], ebp
jmp 0x4c93e1
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x14]
dec eax
mov dword [esp + 0x44], eax
cmp ebp, eax
jg 0x4c9533
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x44]
lea esp, [esp]
cmp ebp, 1
je 0x4c951f
push ebp
push edx
call fcn.004ab040
mov edx, dword [esp + 0x18]
add esp, 8
mov ecx, dword [esp + 0x20]
mov eax, dword [edx + 0x10]
mov eax, dword [ecx + eax + 0xc]
mov ebx, dword [eax + 0x10]
test ebx, ebx
je 0x4c9510
lea ecx, [ecx]
mov edi, dword [ebx + 8]
test dword [edi + 0x24], 0x100
je 0x4c9502
mov ax, word [edi + 0x2e]
add ax, 0x2e
movzx ebp, ax
mov eax, dword [edi + 8]
test eax, eax
je 0x4c944f
test byte [eax + 0x38], 0x80
je 0x4c9496
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x4c9442
test bp, bp
je 0x4c9496
push 0x60
push edi
push dword [esp + 0x1c]
push dword [esp + 0x5c]
push dword [esp + 0x94]
call fcn.004c38e0
mov ecx, dword [esp + 0x54]
movsx eax, bp
and ecx, 1
push eax
mov eax, dword [esi + 0x6c]
add ecx, 2
add eax, ecx
push eax
push dword [esp + 0x6c]
push 0x22
push esi
call fcn.004d4ac0
mov ecx, dword [esp + 0x48]
add esp, 0x28
mov edx, dword [esp + 0x10]
push dword [edi]
mov eax, dword [edx + 0x10]
push dword [ecx + eax]
push str.ANALYZE___w_.__w_
push edx
call fcn.004c2dc0
add esp, 0x10
mov edx, eax
test byte [esp + 0x40], 1
je 0x4c94e3
push dword [esp + 0x84]
call fcn.004be520
push 0xfffffffffffffff9
push edx
push 0
mov edi, eax
push edi
push 0
push 0x73
push esi
call fcn.004d4b20
push 1
push edi
push 0x50
push esi
call fcn.004d4a60
add esp, 0x30
jmp 0x4c94fa
push 0xfffffffffffffff9
push edx
push 0
push 0
push 0
push 0x8c
push esi
call fcn.004d4b20
add esp, 0x1c
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
mov ebx, dword [ebx]
test ebx, ebx
jne 0x4c9420
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x84]
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x20]
inc ebp
add eax, 0x10
mov dword [esp + 0x14], ebp
mov dword [esp + 0x20], eax
cmp ebp, ecx
jle 0x4c93f0
push 0x9e
push esi
call fcn.004d49b0
add esp, 8
jmp 0x4c754e
test edx, edx
je 0x4c956c
lea eax, [esp + 0x64]
push eax
push edx
call fcn.004ad690
add esp, 8
test eax, eax
jne 0x4c956c
push dword [esp + 0x68]
push dword [esp + 0x68]
call fcn.00459b70
add esp, 8
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.00459b70
push edx
push eax
push esi
call fcn.004a0500
add esp, 0x14
jmp 0x4c754e
test edx, edx
je 0x4c95d5
lea eax, [esp + 0x64]
push eax
push edx
call fcn.004ad690
add esp, 8
test eax, eax
jne 0x4c95d5
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.00459c80
mov edi, dword [esp + 0x70]
add esp, 8
mov ebx, eax
test edi, edi
jl 0x4c95d5
mov ecx, dword [esp + 0x64]
jg 0x4c95bb
test ecx, ecx
je 0x4c95d5
mov eax, ebx
or eax, edx
je 0x4c95cb
cmp edx, edi
jl 0x4c95d5
jg 0x4c95cb
cmp ebx, ecx
jbe 0x4c95d5
push edi
push ecx
call fcn.00459c80
add esp, 8
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.00459c80
push edx
push eax
push esi
call fcn.004a0500
add esp, 0x14
jmp 0x4c754e
test edx, edx
je 0x4c962f
lea eax, [esp + 0x64]
push eax
push edx
call fcn.004ad690
add esp, 8
test eax, eax
jne 0x4c962f
cmp dword [esp + 0x68], eax
jl 0x4c962f
mov eax, dword [esp + 0x64]
jg 0x4c9614
test eax, eax
jb 0x4c962f
and eax, 0x7fffffff
jl 0x4c962f
cmp eax, 8
jle 0x4c9625
mov eax, 8
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x98], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x98]
jmp 0x4c7542
test edx, edx
je 0x4c9673
lea eax, [esp + 0x64]
push eax
push edx
call fcn.004ad690
add esp, 8
test eax, eax
jne 0x4c9673
cmp dword [esp + 0x68], eax
jl 0x4c9673
mov eax, dword [esp + 0x64]
jg 0x4c9664
test eax, eax
jb 0x4c9673
mov ecx, dword [esp + 0x10]
and eax, 0x7fffffff
mov dword [ecx + 0x1d4], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x1d4]
jmp 0x4c7542
test edx, edx
je 0x4c9699
push edx
call fcn.004a4f40
push eax
push dword [esp + 0x18]
call fcn.0045ca70
add esp, 0xc
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x1d8]
jmp 0x4c7542
mov ebp, eax
jmp 0x4c7552