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

Disassembly:
sub esp, 0x378
mov eax, dword [0x10077990]
xor eax, esp
mov dword [esp + 0x374], eax
mov ecx, dword [esp + 0x390]
xor edx, edx
mov eax, dword [esp + 0x38c]
push ebx
mov ebx, dword [esp + 0x384]
push ebp
mov ebp, dword [esp + 0x390]
push esi
push edi
mov edi, 1
mov dword [esp + 0x34], ecx
push edi
push 0x3c
mov word [ecx], dx
lea ecx, [esp + 0x40]
push ecx
push edx
push eax
push dword [esp + 0x3a8]
mov dword [esp + 0x38], 0
push ebx
mov dword [esp + 0x30], edi
call sub.msjet40.dll_Ordinal_137
test eax, eax
js 0x10030aac
lea eax, [esp + 0x20]
push eax
push 0xff
lea eax, [esp + 0x28c]
push eax
push dword [ebp + 4]
push ebx
call sub.msjet40.dll_Ordinal_132
test eax, eax
js 0x10030aac
push 0
push 0
lea eax, [esp + 0x18]
push eax
push 4
lea eax, [esp + 0x40]
push eax
push dword [ebp + 0x14]
push dword [ebp + 4]
push ebx
call sub.msjet40.dll_Ordinal_167
test eax, eax
js 0x10030aac
push 0
push 0
lea eax, [esp + 0x18]
push eax
push 0x80
lea eax, [esp + 0x210]
push eax
push dword [ebp + 0x28]
push dword [ebp + 4]
push ebx
call sub.msjet40.dll_Ordinal_167
test eax, eax
js 0x10030aac
mov eax, dword [esp + 0x10]
and eax, 0xfffffffe
cmp eax, 0x82
jae 0x10030ab3
xor ecx, ecx
push ecx
push ecx
mov word [esp + eax + 0x208], cx
lea eax, [esp + 0x18]
push eax
push 4
lea eax, [esp + 0x3c]
push eax
push dword [ebp + 0x18]
push dword [ebp + 4]
push ebx
call sub.msjet40.dll_Ordinal_167
mov esi, eax
test esi, esi
js 0x10030aac
cmp dword [esp + 0x40], 0
jbe 0x10030a57
lea esp, [esp]
push 0
push 0
lea eax, [esp + 0x18]
push eax
push 4
lea eax, [esp + 0x38]
push eax
push dword [esp + 0x5c]
push dword [esp + 0x54]
push ebx
call sub.msjet40.dll_Ordinal_167
test eax, eax
js 0x10030aa8
test byte [esp + 0x28], 3
je 0x10030a3b
push 0
push 0
lea eax, [esp + 0x18]
push eax
push 4
lea eax, [esp + 0x28]
push eax
push dword [esp + 0x6c]
push dword [esp + 0x54]
push ebx
call sub.msjet40.dll_Ordinal_167
test eax, eax
js 0x10030aa8
mov eax, dword [esp + 0x18]
cmp eax, dword [esp + 0x30]
jne 0x10030a3b
push 0
push 0
lea eax, [esp + 0x18]
push eax
push 0x80
lea eax, [esp + 0x84]
push eax
push dword [esp + 0x84]
push dword [esp + 0x54]
push ebx
call sub.msjet40.dll_Ordinal_167
test eax, eax
js 0x10030aa8
mov eax, dword [esp + 0x10]
and eax, 0xfffffffe
cmp eax, 0x82
jae 0x10030ab3
xor ecx, ecx
mov word [esp + eax + 0x74], cx
lea eax, [esp + 0x200]
push eax
lea eax, [esp + 0x78]
push eax
call fcn.1004ae64
add esp, 8
test eax, eax
jne 0x10030a3b
push eax
push eax
lea eax, [esp + 0x18]
push eax
push 4
lea eax, [esp + 0x34]
push eax
push dword [esp + 0x70]
push dword [esp + 0x54]
push ebx
call sub.msjet40.dll_Ordinal_167
test eax, eax
js 0x10030aa8
push 0
push 0
lea eax, [esp + 0x18]
push eax
push 4
lea eax, [esp + 0x2c]
push eax
push dword [esp + 0x80]
push dword [esp + 0x54]
push ebx
call sub.msjet40.dll_Ordinal_167
test eax, eax
js 0x10030aa8
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x2c]
jne 0x10030a3b
cmp dword [esp + 0x1c], 0
jne 0x10030a3b
push 0
push 0
lea eax, [esp + 0x18]
push eax
push 0x80
lea eax, [esp + 0x18c]
push eax
push dword [esp + 0x58]
push dword [esp + 0x54]
push ebx
call sub.msjet40.dll_Ordinal_167
mov esi, eax
test esi, esi
js 0x10030aa8
mov eax, dword [esp + 0x10]
and eax, 0xfffffffe
cmp eax, 0x82
jae 0x10030ab3
xor ecx, ecx
mov dword [esp + 0x14], 1
mov edi, 1
mov word [esp + eax + 0x17c], cx
cmp dword [esp + 0x18], edi
jle 0x100309d7
push 0
push 1
push dword [esp + 0x44]
push ebx
call sub.msjet40.dll_Ordinal_156
mov esi, eax
test esi, esi
js 0x100309d7
push 0
push 1
push dword [ebp + 4]
push ebx
call sub.msjet40.dll_Ordinal_156
mov esi, eax
test esi, esi
js 0x100309d7
push 0
push 0
lea eax, [esp + 0x18]
push eax
push 0x80
lea eax, [esp + 0x84]
push eax
push dword [esp + 0x84]
push dword [esp + 0x54]
push ebx
call sub.msjet40.dll_Ordinal_167
mov eax, dword [esp + 0x10]
and eax, 0xfffffffe
cmp eax, 0x82
jae 0x10030ab3
xor ecx, ecx
push ecx
push ecx
mov word [esp + eax + 0x7c], cx
lea eax, [esp + 0x18]
push eax
push 0x80
lea eax, [esp + 0x108]
push eax
push dword [ebp + 0x28]
push dword [ebp + 4]
push ebx
call sub.msjet40.dll_Ordinal_167
mov eax, dword [esp + 0x10]
and eax, 0xfffffffe
cmp eax, 0x82
jae 0x10030ab3
xor ecx, ecx
push ecx
push ecx
mov word [esp + eax + 0x100], cx
lea eax, [esp + 0x18]
push eax
push 4
lea eax, [esp + 0x2c]
push eax
push dword [esp + 0x80]
push dword [esp + 0x54]
push ebx
call sub.msjet40.dll_Ordinal_167
mov esi, eax
test esi, esi
js 0x10030aa8
lea eax, [esp + 0xf8]
push eax
lea eax, [esp + 0x78]
push eax
call fcn.1004ae64
add esp, 8
test eax, eax
jne 0x100309fd
cmp dword [esp + 0x1c], eax
jne 0x100309fd
inc edi
mov dword [esp + 0x14], 1
cmp edi, dword [esp + 0x18]
jl 0x100308d1
lea eax, [esp + 0x17c]
push eax
push dword [esp + 0x3a8]
push dword [esp + 0x3c]
call fcn.10003fe0
cmp esi, 0xfffff9bd
je 0x10030a6a
mov edi, dword [esp + 0x14]
jmp 0x10030a5f
push dword [esp + 0x20]
lea eax, [esp + 0x288]
mov dword [esp + 0x18], 0
push eax
push dword [ebp + 4]
push ebx
call sub.msjet40.dll_Ordinal_151
mov esi, eax
cmp edi, dword [esp + 0x18]
jge 0x10030a4b
push 0
push 1
push dword [esp + 0x44]
push ebx
call sub.msjet40.dll_Ordinal_156
inc edi
mov esi, eax
cmp edi, dword [esp + 0x18]
jl 0x10030a22
jmp 0x10030a4b
push 0
push 1
push dword [esp + 0x44]
push ebx
call sub.msjet40.dll_Ordinal_156
mov esi, eax
test esi, esi
jns 0x10030740
mov edi, dword [esp + 0x14]
cmp esi, 0xfffff9bd
je 0x10030a63
test esi, esi
js 0x10030aac
xor esi, esi
cmp edi, 1
jne 0x10030a6c
xor esi, esi
push dword [esp + 0x3c]
push ebx
call sub.msjet40.dll_Ordinal_108
push dword [esp + 0x20]
lea eax, [esp + 0x288]
push eax
push dword [ebp + 4]
push ebx
call sub.msjet40.dll_Ordinal_151
mov ecx, dword [esp + 0x384]
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.1003dba2
add esp, 0x378
ret 0x1c
mov edi, dword [esp + 0x14]
mov esi, 0x80004005
jmp 0x10030a65
call fcn.1003e83e
int3