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

Disassembly:
sub esp, 0x14
mov eax, dword [esp + 0x18]
push ebx
mov ebx, dword [eax + 4]
mov eax, dword [ebx + 0x7c]
push ebp
push esi
mov esi, dword [eax]
cmp esi, eax
push edi
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], esi
je 0x100419a8
lea ebp, [ecx + 0x78]
lea ecx, [esi + 0x10]
push ecx
mov ecx, ebp
call fcn.1003e6b0
mov edx, dword [esi + 0x40]
mov edi, eax
mov eax, dword [esp + 0x28]
add edx, dword [eax]
lea ecx, [esi + 0x18]
push ecx
mov ecx, edi
mov dword [edi + 0x28], edx
call fcn.1003ca00
mov edx, dword [esi + 0x38]
mov dword [edi + 0x20], edx
mov eax, dword [esi + 0x3c]
lea ecx, [esp + 0x18]
mov dword [edi + 0x24], eax
call fcn.1003c740
mov esi, dword [esp + 0x18]
cmp esi, dword [ebx + 0x7c]
jne 0x10041966
mov eax, dword [ebx + 0x88]
mov esi, dword [eax]
cmp esi, eax
je 0x10041a42
mov ebp, dword [esp + 0x10]
add ebp, 0x84
lea ecx, [esi + 0x10]
push ecx
mov ecx, ebp
call fcn.1003e6b0
mov edx, dword [esi + 0x40]
mov edi, eax
mov eax, dword [esp + 0x28]
add edx, dword [eax]
lea ecx, [esi + 0x18]
push ecx
mov ecx, edi
mov dword [edi + 0x28], edx
call fcn.1003ca00
mov edx, dword [esi + 0x38]
mov dword [edi + 0x20], edx
mov eax, dword [esi + 0x3c]
mov dword [edi + 0x24], eax
mov al, byte [esi + 0x49]
test al, al
jne 0x10041a3a
mov eax, dword [esi + 8]
mov cl, byte [eax + 0x49]
test cl, cl
jne 0x10041a1d
mov esi, eax
mov eax, dword [esi]
mov cl, byte [eax + 0x49]
test cl, cl
jne 0x10041a3a
mov edi, edi
mov esi, eax
mov eax, dword [esi]
mov cl, byte [eax + 0x49]
test cl, cl
je 0x10041a10
jmp 0x10041a3a
mov eax, dword [esi + 4]
mov cl, byte [eax + 0x49]
test cl, cl
jne 0x10041a38
cmp esi, dword [eax + 8]
jne 0x10041a38
mov esi, eax
mov eax, dword [eax + 4]
mov cl, byte [eax + 0x49]
test cl, cl
je 0x10041a27
mov esi, eax
cmp esi, dword [ebx + 0x88]
jne 0x100419c2
mov eax, dword [ebx + 0x16c]
mov edi, dword [eax]
cmp edi, eax
je 0x10041b35
mov esi, dword [esp + 0x10]
lea ebx, [edi + 0xc]
add esi, 0x168
push ebx
mov ecx, esi
call fcn.1003c810
mov ebp, eax
cmp ebp, dword [esi + 4]
je 0x10041aa0
mov esi, dword [ebp + 0xc]
mov ecx, dword [ebx]
mov al, byte [ecx]
mov dl, al
cmp al, byte [esi]
jne 0x10041a97
test dl, dl
je 0x10041a93
mov al, byte [ecx + 1]
mov dl, al
cmp al, byte [esi + 1]
jne 0x10041a97
add ecx, 2
add esi, 2
test dl, dl
jne 0x10041a73
xor ecx, ecx
jmp 0x10041a9c
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jge 0x10041aca
mov ecx, dword [ebx]
lea edx, [esp + 0x1c]
push edx
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x14]
push ebp
lea eax, [esp + 0x20]
push eax
add ecx, 0x168
mov dword [esp + 0x2c], 0
call fcn.1003e170
mov ebp, dword [eax]
mov ecx, dword [edi + 0x10]
mov dword [ebp + 0x10], ecx
mov al, byte [edi + 0x15]
test al, al
jne 0x10041b23
mov ecx, dword [edi + 8]
mov al, byte [ecx + 0x15]
test al, al
jne 0x10041aff
mov eax, dword [ecx]
mov dl, byte [eax + 0x15]
test dl, dl
jne 0x10041afb
lea ebx, [ebx]
mov ecx, eax
mov eax, dword [ecx]
mov dl, byte [eax + 0x15]
test dl, dl
je 0x10041af0
mov edi, ecx
jmp 0x10041b23
mov eax, dword [edi + 4]
mov cl, byte [eax + 0x15]
test cl, cl
jne 0x10041b21
lea esp, [esp]
cmp edi, dword [eax + 8]
jne 0x10041b21
mov edi, eax
mov eax, dword [eax + 4]
mov cl, byte [eax + 0x15]
test cl, cl
je 0x10041b10
mov edi, eax
mov edx, dword [esp + 0x14]
cmp edi, dword [edx + 0x16c]
jne 0x10041a52
mov ebx, edx
mov ebp, dword [esp + 0x10]
lea edi, [ebx + 0x98]
add ebp, 0x90
mov ebx, 0xd
lea ebx, [ebx]
mov esi, dword [edi - 4]
cmp esi, dword [edi]
je 0x10041b68
push esi
mov ecx, ebp
call fcn.1003e990
mov eax, dword [edi]
add esi, 0x38
cmp esi, eax
jne 0x10041b57
add ebp, 0x10
add edi, 0x10
dec ebx
jne 0x10041b50
mov ebx, dword [esp + 0x10]
mov edx, dword [ebx + 0x38]
test edx, edx
lea esi, [ebx + 0x34]
jne 0x10041b83
xor ecx, ecx
jmp 0x10041b8b
mov ecx, dword [esi + 8]
sub ecx, edx
sar ecx, 3
test edx, edx
je 0x10041bbc
mov eax, dword [esi + 0xc]
sub eax, edx
sar eax, 3
cmp ecx, eax
jae 0x10041bbc
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x28]
mov edi, dword [esi + 8]
push eax
push esi
push ecx
push 1
push edi
call fcn.10041110
add esp, 0x14
add edi, 8
mov dword [esi + 8], edi
jmp 0x10041bce
mov edx, dword [esp + 0x28]
mov eax, dword [esi + 8]
push edx
push 1
push eax
mov ecx, esi
call fcn.100416f0
mov eax, dword [ebx + 0x160]
test eax, eax
jne 0x10041be8
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x160]
mov dword [ebx + 0x160], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x14
ret 4