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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1c
push ebx
push esi
push edi
mov edi, ecx
mov esi, edx
mov dword [esp + 0x14], edi
cmp byte [edi], 0
jne 0x41dcb3
mov cl, byte [edi + 1]
test cl, 2
je 0x41dcb3
mov edx, dword [edi + 0x20]
mov ebx, dword [ebp + 8]
mov eax, dword [edi + 0x24]
cmp edx, ebx
jne 0x41dc1d
cmp eax, dword [ebp + 0xc]
jne 0x41dc20
mov eax, dword [ebp + 0x10]
mov dword [eax], 0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, dword [ebp + 0xc]
jg 0x41dcb3
jl 0x41dc30
cmp edx, ebx
jae 0x41dcb3
test cl, 8
jne 0x41dcc7
add edx, 1
adc eax, 0
cmp edx, ebx
jne 0x41dcb3
cmp eax, dword [ebp + 0xc]
jne 0x41dcb3
mov eax, dword [ebp + 0x10]
and cl, 0xf9
mov byte [edi + 1], cl
mov ecx, dword [edi + 0x74]
mov dword [eax], 0
xor eax, eax
mov word [edi + 0x32], ax
movzx eax, word [edi + 0x46]
mov edx, eax
inc eax
mov word [edi + 0x46], ax
cmp ax, word [ecx + 0x18]
jb 0x41dc7e
mov ecx, edi
mov word [edi + 0x46], dx
call fcn.0041e480
jmp 0x41dc8b
cmp byte [ecx + 8], 0
jne 0x41dc9b
mov ecx, edi
call fcn.0041d9b0
test eax, eax
je 0x41dc9b
cmp eax, 0x65
je 0x41dcb3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, edi
call fcn.0041d040
cmp dword [edi + 0x20], ebx
jne 0x41dcb3
mov eax, dword [ebp + 0xc]
cmp dword [edi + 0x24], eax
je 0x41decf
mov ecx, edi
call fcn.0041d6e0
test eax, eax
je 0x41dcd9
cmp eax, 0x10
jne 0x41ded1
mov eax, dword [ebp + 0x10]
mov dword [eax], 0xffffffff
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 1
lea ebx, [edi + 0x74]
sub eax, esi
mov dword [esp + 0x1c], eax
mov edx, dword [ebx]
mov ecx, eax
xor ebx, ebx
mov dword [esp + 0x10], edx
movzx edi, word [edx + 0x18]
mov eax, dword [edx + 0x40]
dec edi
mov esi, edi
mov dword [esp + 0x18], eax
sar esi, cl
mov cl, byte [edx + 2]
mov byte [esp + 0xf], cl
mov ax, word [eax + esi*2]
mov ch, al
mov cl, ah
movzx eax, word [edx + 0x1a]
movzx ecx, cx
and ecx, eax
add ecx, dword [edx + 0x44]
cmp byte [esp + 0xf], 0
je 0x41dd3f
cmp byte [ecx], 0x80
jb 0x41dd3e
mov eax, dword [edx + 0x3c]
nop dword [eax + eax]
inc ecx
cmp ecx, eax
jae 0x41de5c
cmp byte [ecx], 0x80
jae 0x41dd30
inc ecx
lea edx, [esp + 0x20]
call fcn.00408de0
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
cmp ecx, dword [ebp + 0xc]
jg 0x41dd6a
jl 0x41dd5e
mov edx, dword [ebp + 8]
cmp eax, edx
jae 0x41dd6d
lea ebx, [esi + 1]
cmp ebx, edi
jle 0x41dd7f
or eax, 0xffffffff
jmp 0x41dd96
mov edx, dword [ebp + 8]
cmp ecx, dword [ebp + 0xc]
jl 0x41ddbc
jg 0x41dd78
cmp eax, edx
jbe 0x41ddbc
lea edi, [esi - 1]
cmp ebx, edi
jg 0x41dd91
mov edx, dword [esp + 0x10]
lea esi, [edi + ebx]
mov eax, dword [esp + 0x18]
sar esi, 1
jmp 0x41dd08
mov eax, 1
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
cmp byte [edx + 8], 0
je 0x41ddd4
mov ecx, dword [ebp + 0x10]
mov word [edi + 0x46], si
mov dword [ecx], eax
xor eax, eax
xor ecx, ecx
mov word [edi + 0x32], cx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov word [edi + 0x46], si
cmp byte [edx + 8], 0
jne 0x41deb6
mov ebx, esi
movzx eax, word [edx + 0x18]
cmp ebx, eax
jl 0x41dde9
movzx ecx, byte [edx + 9]
mov eax, dword [edx + 0x38]
mov edx, dword [ecx + eax + 8]
jmp 0x41de03
mov eax, dword [edx + 0x40]
mov ax, word [eax + ebx*2]
mov ch, al
mov cl, ah
movzx eax, word [edx + 0x1a]
movzx ecx, cx
and ecx, eax
mov eax, dword [edx + 0x38]
mov edx, dword [ecx + eax]
mov al, byte [edi + 0x44]
mov esi, dword [edi + 0x14]
movzx ecx, bx
mov word [edi + 0x46], cx
cmp al, 0x13
jge 0x41de86
and byte [edi + 1], 0xf9
xor ebx, ebx
movsx eax, al
mov word [edi + 0x32], bx
lea ebx, [edi + 0x74]
bswap edx
mov word [edi + eax*2 + 0x48], cx
movsx ecx, byte [edi + 0x44]
mov eax, dword [ebx]
mov dword [edi + ecx*4 + 0x78], eax
xor eax, eax
inc byte [edi + 0x44]
mov ecx, esi
mov word [edi + 0x46], ax
movzx eax, byte [edi + 2]
push eax
push edi
push ebx
call fcn.0041a5c0
add esp, 0xc
test eax, eax
jne 0x41dea9
mov eax, dword [esp + 0x1c]
jmp 0x41dce7
push 0x4e01cc
push 0x11afd
push str.database_corruption
push str._s_at_line__d_of___.10s_
push 0xb
call fcn.00407380
add esp, 0x14
mov eax, 0xb
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x4e01cc
push 0x11975
push str.database_corruption
push str._s_at_line__d_of___.10s_
push 0xb
call fcn.00407380
add esp, 0x14
mov eax, 0xb
xor ecx, ecx
mov word [edi + 0x32], cx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
or byte [edi + 1], 2
mov dword [edi + 0x20], eax
xor eax, eax
mov word [edi + 0x32], ax
mov eax, dword [ebp + 0x10]
mov dword [edi + 0x24], ecx
mov dword [eax], 0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret