Function at 0x481c8d
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
sub esp, 0xbc
mov eax, dword [0x518450]
xor eax, esp
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0xcc]
xorps xmm0, xmm0
push ebx
push ebp
mov ebp, dword [esp + 0xcc]
push esi
mov esi, dword [esp + 0xd4]
push edi
mov edi, dword [esp + 0xd0]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0xe0]
push ebp
mov dword [esp + 0x24], eax
lea eax, [esp + 0x68]
push str.Page__d:
push eax
push 0x64
movlpd qword [esp + 0x44], xmm0
movlpd qword [esp + 0x24], xmm0
call fcn.0047ba30
mov ebx, dword [edi]
add esp, 0x10
mov dword [esp + 0x10], ebx
mov eax, dword [ebx + 0x28]
mov dword [esp + 0x28], eax
test ebp, ebp
jne 0x481d0c
xor eax, eax
jmp 0x4822c7
push esi
push ebp
push edi
call fcn.00481c2e
add esp, 0xc
test eax, eax
jne 0x481d05
push eax
lea eax, [esp + 0x30]
push eax
push ebp
push ebx
call fcn.00481218
add esp, 0x10
test eax, eax
je 0x481d45
push eax
push str.unable_to_get_the_page._error_code_d
lea eax, [esp + 0x6c]
push eax
push edi
call fcn.0048195f
add esp, 0x10
jmp 0x481d05
mov ebx, dword [esp + 0x2c]
xor edx, edx
push ebx
mov byte [ebx], dl
call fcn.00481253
pop ecx
test eax, eax
je 0x481d74
push eax
push str.btreeInitPage___returns_error_code__d
lea eax, [esp + 0x6c]
push eax
push edi
call fcn.0048195f
push ebx
call fcn.004902b9
add esp, 0x14
jmp 0x481d05
xor ecx, ecx
xor eax, eax
mov esi, ecx
mov dword [esp + 0x40], ecx
cmp ax, word [ebx + 0x10]
jae 0x481f6b
jmp 0x481d8c
xor ecx, ecx
cmp dword [edi + 0x10], ecx
je 0x481f6b
push esi
push ebp
push str.On_tree_page__d_cell__d:
lea eax, [esp + 0x70]
push eax
push 0x64
call fcn.0047ba30
movzx eax, word [ebx + 0xc]
add eax, dword [ebx + 0x40]
movzx ecx, byte [eax + esi*2]
movzx eax, byte [eax + esi*2 + 1]
shl ecx, 8
or ecx, eax
movzx eax, word [ebx + 0x12]
and ecx, eax
lea eax, [esp + 0x58]
add ecx, dword [ebx + 0x40]
push eax
push ecx
push ebx
mov dword [esp + 0x44], ecx
call fcn.00481595
mov edx, dword [esp + 0x70]
add esp, 0x20
cmp byte [ebx + 2], 0
mov dword [esp + 0x1c], edx
jne 0x481ded
add edx, dword [esp + 0x44]
jmp 0x481e52
test esi, esi
jne 0x481e0b
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x48]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], eax
jmp 0x481e52
mov ecx, dword [esp + 0x48]
mov eax, dword [esp + 0x44]
cmp ecx, dword [esp + 0x18]
jg 0x481e4a
jl 0x481e21
cmp eax, dword [esp + 0x14]
ja 0x481e4a
push dword [esp + 0x18]
push dword [esp + 0x18]
push ecx
push eax
push str.Rowid__lld_out_of_order__previous_was__lld_
lea eax, [esp + 0x78]
push eax
push edi
call fcn.0048195f
mov eax, dword [esp + 0x60]
add esp, 0x1c
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ecx
movzx eax, word [esp + 0x5a]
mov ecx, dword [esp + 0x24]
cmp edx, eax
jbe 0x481ee5
movzx eax, word [esp + 0x5c]
add eax, ecx
mov dword [esp + 0x1c], eax
mov eax, dword [ebx + 0x40]
mov ebx, dword [esp + 0x10]
add eax, dword [ebx + 0x28]
mov ebx, dword [esp + 0x2c]
cmp dword [esp + 0x1c], eax
ja 0x481ee5
mov ecx, dword [esp + 0x28]
movzx eax, word [esp + 0x5a]
sub edx, eax
push dword [esp + 0x1c]
lea eax, [ecx - 5]
add ecx, 0xfffffffc
add eax, edx
xor edx, edx
div ecx
mov dword [esp + 0x34], eax
call fcn.0049d05b
pop ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x1c], eax
cmp byte [ecx + 0x15], 0
je 0x481ecb
lea ecx, [esp + 0x64]
push ecx
push ebp
push 3
push eax
push edi
call fcn.00481bac
mov eax, dword [esp + 0x30]
add esp, 0x14
lea ecx, [esp + 0x64]
xor edx, edx
push ecx
push dword [esp + 0x34]
push eax
push edx
push edi
call fcn.00481a0c
mov ecx, dword [esp + 0x38]
add esp, 0x14
cmp byte [ebx + 3], 0
jne 0x481f5e
push ecx
call fcn.0049d05b
pop ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x30], eax
cmp byte [ecx + 0x15], 0
je 0x481f12
lea ecx, [esp + 0x64]
push ecx
push ebp
push 5
push eax
push edi
call fcn.00481bac
add esp, 0x14
xor ecx, ecx
lea eax, [esp + 0x14]
test esi, esi
cmove eax, ecx
push eax
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x6c]
push eax
push dword [esp + 0x3c]
push edi
call fcn.00481c8d
add esp, 0x14
mov dword [esp + 0x30], eax
test esi, esi
jle 0x481f5a
cmp eax, dword [esp + 0x40]
je 0x481f5a
push str.Child_page_depth_differs
lea eax, [esp + 0x68]
push eax
push edi
call fcn.0048195f
mov eax, dword [esp + 0x3c]
add esp, 0xc
mov dword [esp + 0x40], eax
movzx eax, word [ebx + 0x10]
inc esi
cmp esi, eax
jl 0x481d8a
cmp byte [ebx + 3], 0
jne 0x481fe0
mov eax, dword [ebx + 0x40]
movzx ecx, byte [ebx + 5]
add eax, 8
add eax, ecx
push eax
call fcn.0049d05b
push ebp
mov esi, eax
lea eax, [esp + 0x6c]
push str.On_page__d_at_right_child:
push eax
push 0x64
call fcn.0047ba30
mov eax, dword [esp + 0x24]
add esp, 0x14
cmp byte [eax + 0x15], 0
je 0x481fb6
lea eax, [esp + 0x64]
push eax
push ebp
push 5
push esi
push edi
call fcn.00481bac
add esp, 0x14
xor edx, edx
lea eax, [esp + 0x14]
xor ecx, ecx
cmp word [ebx + 0x10], dx
cmove eax, ecx
push eax
push edx
lea eax, [esp + 0x6c]
push eax
push esi
push edi
call fcn.00481c8d
add esp, 0x14
cmp byte [ebx + 3], 0
je 0x4820d0
cmp byte [ebx + 2], 0
je 0x4820d0
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x482098
mov ebp, dword [esp + 0x20]
mov eax, dword [esi]
mov ecx, dword [esi + 4]
test ebp, ebp
jne 0x48202d
cmp dword [esp + 0x18], ecx
jl 0x4820d0
jg 0x482019
cmp dword [esp + 0x14], eax
jbe 0x4820d0
push ecx
push eax
push dword [esp + 0x20]
push dword [esp + 0x20]
push str.Rowid__lld_out_of_order__max_larger_than_parent_min_of__lld_
jmp 0x4820c2
cmp dword [esp + 0x38], ecx
jg 0x482058
jl 0x48203b
cmp dword [esp + 0x34], eax
ja 0x482058
push ecx
push eax
push dword [esp + 0x40]
lea eax, [esp + 0x70]
push dword [esp + 0x40]
push str.Rowid__lld_out_of_order__min_less_than_parent_min_of__lld_
push eax
push edi
call fcn.0048195f
add esp, 0x1c
mov ecx, dword [ebp + 4]
mov eax, dword [ebp]
cmp dword [esp + 0x18], ecx
jl 0x482089
jg 0x48206c
cmp dword [esp + 0x14], eax
jbe 0x482089
push ecx
push eax
push dword [esp + 0x20]
lea eax, [esp + 0x70]
push dword [esp + 0x20]
push str.Rowid__lld_out_of_order__max_larger_than_parent_max_of__lld_
push eax
push edi
call fcn.0048195f
add esp, 0x1c
mov eax, dword [esp + 0x14]
mov dword [esi], eax
mov eax, dword [esp + 0x18]
mov dword [esi + 4], eax
jmp 0x4820d0
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x4820d0
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
cmp dword [esp + 0x38], ecx
jg 0x4820d0
jl 0x4820b3
cmp dword [esp + 0x34], eax
ja 0x4820d0
push ecx
push eax
push dword [esp + 0x40]
push dword [esp + 0x40]
push str.Rowid__lld_out_of_order__min_less_than_parent_max_of__lld_
lea eax, [esp + 0x78]
push eax
push edi
call fcn.0048195f
add esp, 0x1c
movzx eax, byte [ebx + 5]
mov ebp, dword [ebx + 0x40]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x10]
push dword [eax + 0x24]
call fcn.0048f1e8
mov esi, eax
mov dword [esp + 0x14], esi
pop ecx
test esi, esi
jne 0x4820fe
mov dword [edi + 0x18], 1
jmp 0x4822b4
mov eax, dword [esp + 0x24]
movzx esi, byte [eax + ebp + 5]
movzx eax, byte [eax + ebp + 6]
shl esi, 8
or esi, eax
mov eax, dword [esp + 0x28]
dec esi
and esi, 0xffff
inc esi
sub eax, esi
push eax
xor eax, eax
push eax
mov eax, dword [esp + 0x18]
add eax, esi
push eax
call fcn.004bf040
push esi
mov esi, dword [esp + 0x20]
push 1
push esi
call fcn.004bf040
mov ecx, dword [esp + 0x3c]
add esp, 0x18
movzx edx, byte [ecx + ebp + 3]
movzx eax, byte [ecx + ebp + 4]
shl edx, 8
or edx, eax
movzx eax, byte [ebx + 3]
mov dword [esp + 0x1c], edx
push 3
pop edx
sub edx, eax
lea eax, [ecx + edx*4]
xor edx, edx
mov dword [esp + 0x2c], edx
cmp dword [esp + 0x1c], edx
jle 0x482205
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffffc
add eax, ebp
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x20], eax
movzx esi, byte [eax + 1]
movzx eax, byte [eax]
shl eax, 8
or esi, eax
mov eax, 0x10000
cmp esi, ecx
jg 0x4821ab
lea eax, [esi + ebp]
push eax
push ebx
call fcn.00481835
mov edx, dword [esp + 0x34]
pop ecx
pop ecx
movzx eax, ax
dec eax
add eax, esi
cmp eax, dword [esp + 0x28]
jl 0x4821d3
push dword [esp + 0xd4]
xor eax, eax
push edx
push str.Corruption_detected_in_cell__d_on_page__d
push eax
push edi
call fcn.0048195f
mov edx, dword [esp + 0x40]
add esp, 0x14
jmp 0x4821e3
cmp eax, esi
jl 0x4821e3
mov ecx, dword [esp + 0x10]
inc byte [eax + ecx]
dec eax
cmp eax, esi
jge 0x4821db
mov eax, dword [esp + 0x20]
inc edx
mov ecx, dword [esp + 0x3c]
add eax, 2
mov dword [esp + 0x2c], edx
mov dword [esp + 0x20], eax
cmp edx, dword [esp + 0x1c]
jl 0x482183
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x24]
movzx edx, byte [ecx + ebp + 1]
movzx eax, byte [ecx + ebp + 2]
shl edx, 8
or edx, eax
jle 0x482244
movzx ecx, byte [edx + ebp + 2]
movzx eax, byte [edx + ebp + 3]
shl ecx, 8
or ecx, eax
lea eax, [edx - 1]
add eax, ecx
jmp 0x482230
inc byte [eax + esi]
dec eax
cmp eax, edx
jge 0x48222c
movzx ecx, byte [edx + ebp]
movzx edx, byte [edx + ebp + 1]
shl ecx, 8
or edx, ecx
jg 0x482216
xor edx, edx
mov eax, edx
mov ecx, edx
mov dword [esp + 0x20], ecx
cmp dword [esp + 0x28], eax
jle 0x48228f
mov dl, byte [eax + esi]
test dl, dl
jne 0x482262
inc ecx
mov dword [esp + 0x20], ecx
jmp 0x482267
cmp dl, 1
jg 0x482270
inc eax
cmp eax, dword [esp + 0x28]
jl 0x482254
jmp 0x48228d
push dword [esp + 0xd4]
push eax
push str.Multiple_uses_for_byte__d_of_page__d
xor eax, eax
push eax
push edi
call fcn.0048195f
mov ecx, dword [esp + 0x34]
add esp, 0x14
xor edx, edx
mov eax, dword [esp + 0x24]
movzx eax, byte [eax + ebp + 7]
cmp ecx, eax
je 0x4822b4
push dword [esp + 0xd4]
push eax
push ecx
push str.Fragmentation_of__d_bytes_reported_as__d_on_page__d
push edx
push edi
call fcn.0048195f
add esp, 0x18
push esi
call fcn.0048f30c
push ebx
call fcn.004902b9
mov eax, dword [esp + 0x48]
pop ecx
pop ecx
inc eax
mov ecx, dword [esp + 0xc8]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004b9a6c
add esp, 0xbc
ret