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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4fc37f
mov eax, dword fs:[0]
push eax
sub esp, 0x50
push ebx
push esi
push edi
mov eax, dword [0x56d790]
xor eax, esp
push eax
lea eax, [esp + 0x60]
mov dword fs:[0], eax
mov ebx, ecx
mov eax, 0x574b24
mov dword [esp + 0x14], eax
xor ecx, ecx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x10], eax
xor edi, edi
inc edi
mov byte [esp + 0x68], 1
mov dword [esp + 0x44], ecx
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], ecx
mov byte [esp + 0x68], 2
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], ecx
mov byte [esp + 0x68], 3
cmp byte [ebp + 0xc], cl
jne 0x4449fd
mov eax, dword [ebx]
cmp eax, 0xfffffffe
je 0x4449e9
cmp eax, 0xffffffff
je 0x4449c1
cmp eax, ecx
je 0x4449b9
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x20]
cmp eax, ecx
jne 0x4449a0
call fcn.0044297d
lea edi, [eax + 0x18]
lea esi, [esp + 0x44]
call fcn.00446780
lea edi, [ebx + 0x20]
call fcn.00442997
xor edi, edi
inc edi
jmp 0x444a00
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x78]
jmp 0x4449ef
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x74]
mov eax, dword [eax + 0x78]
push 0
push eax
lea esi, [esp + 0x4c]
mov dword [esp + 0x28], ecx
call fcn.0044693b
push 0
push dword [esp + 0x24]
mov ecx, esi
call fcn.00446836
jmp 0x4449fb
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3c]
push 0
push eax
lea esi, [esp + 0x4c]
call fcn.0044693b
mov dword [ebx], edi
mov ebx, dword [ebp + 8]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x3c]
push eax
mov eax, ebx
call fcn.004434be
mov esi, dword [esp + 0x1c]
mov eax, dword [ebx + 0x30]
mov dword [esp + 0x20], eax
test esi, esi
jbe 0x444a37
push edi
push 8
mov ecx, ebx
call fcn.004434ff
dec esi
jne 0x444a2a
mov esi, dword [ebx + 0x30]
push edi
push 7
mov ecx, ebx
call fcn.004434ff
push dword [ebp + 0xc]
mov ecx, ebx
push 5
call fcn.004434ff
push dword [ebp + 0xc]
mov eax, dword [ebx + 0x30]
push 7
mov ecx, ebx
mov dword [esp + 0x3c], eax
mov dword [ebx + 0x30], esi
call fcn.004434ff
cmp byte [ebp + 0xc], 0
mov eax, dword [esp + 0x20]
mov dword [ebx + 0x30], eax
jne 0x444e91
lea eax, [esp + 0x18]
push eax
push ebx
call fcn.0044303a
mov byte [esp + 0x68], 4
mov eax, dword [eax]
mov ecx, dword [eax]
add eax, 8
push eax
lea eax, [esp + 0x14]
push eax
call fcn.0043f975
mov byte [esp + 0x68], 3
cmp dword [esp + 0x18], 0x574b24
je 0x444ab2
push dword [esp + 0x18]
call fcn.004bb6a6
pop ecx
mov esi, 0x522124
mov ecx, esi
lea eax, [esp + 0x10]
call fcn.00442b67
neg al
sbb al, al
inc al
mov byte [esp + 0x30], al
mov eax, ebx
call fcn.00443015
mov edx, dword [esp + 0x44]
xor ecx, ecx
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], edx
mov dword [esp + 0x18], ecx
cmp edx, ecx
jbe 0x444de7
mov edx, dword [esp + 0x4c]
cmp byte [edx + ecx], 0
jne 0x444dc8
mov edx, dword [esp + 0x48]
mov edi, dword [edx + ecx*4]
test edi, edi
je 0x444dc8
cmp eax, 0x2f
jg 0x444cd0
je 0x444cba
cmp eax, 0x2b
jg 0x444c25
je 0x444b94
sub eax, 0
je 0x444c91
dec eax
je 0x444b94
sub eax, 0x28
je 0x444b88
dec eax
jne case.0x444cdc.49
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x18]
test eax, eax
je 0x444b65
cmp edi, dword [ebx + 0x78]
je 0x444b65
jmp 0x444b57
cmp edi, dword [ebx + 0x78]
je 0x444dc8
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x14]
call fcn.00442b99
mov edi, dword [edi + 0x10]
test edi, edi
jne 0x444b4e
jmp 0x444dc8
cmp edi, dword [ebx + 0x78]
je 0x444dc8
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x14]
call fcn.00442b99
mov edi, dword [edi + 0x10]
test edi, edi
jne 0x444b71
jmp 0x444dc8
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x18]
test eax, eax
je 0x444bb8
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x18]
mov ecx, dword [eax + 0x4c]
add eax, 0x2c
cmp ecx, eax
je 0x444dc8
mov edi, ecx
jmp 0x444c1c
xor edi, edi
jmp 0x444c1c
mov ecx, 0x522124
lea eax, [esp + 0x10]
call fcn.00442b67
test al, al
jne 0x444c07
mov esi, dword [esp + 0x10]
mov eax, dword [edi + 0x14]
add esi, 8
add eax, 8
mov cl, byte [eax]
cmp cl, byte [esi]
jne 0x444bf9
test cl, cl
je 0x444bf5
mov cl, byte [eax + 1]
cmp cl, byte [esi + 1]
jne 0x444bf9
inc eax
inc eax
inc esi
inc esi
test cl, cl
jne 0x444bdb
xor eax, eax
jmp 0x444bfe
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
sete al
test al, al
je 0x444c13
push 1
push edi
lea esi, [esp + 0x40]
call fcn.0044693b
mov eax, edi
call fcn.00440959
mov edi, eax
test edi, edi
jne 0x444bbc
jmp 0x444dc8
sub eax, 0x2c
je 0x444c91
dec eax
je 0x444c6d
dec eax
jne case.0x444cdc.49
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x18]
test eax, eax
je 0x444dc8
cmp edi, dword [ebx + 0x78]
je 0x444c56
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x14]
call fcn.00442b99
mov ecx, esi
lea eax, [esp + 0x10]
call fcn.00442b67
lea ecx, [esp + 0x38]
test al, al
je 0x444c7e
push 0
jmp 0x444c86
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x18]
test eax, eax
je 0x444dc8
jmp 0x444c56
mov eax, dword [esp + 0x10]
add eax, 8
push eax
push edi
call fcn.004468ce
jmp 0x444dc8
mov eax, edi
call fcn.00440108
jmp 0x444caf
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x14]
call fcn.00442b99
mov eax, edi
call fcn.00440161
mov edi, eax
test edi, edi
jne 0x444c9a
jmp 0x444dc8
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x3c]
push eax
mov eax, edi
call fcn.004469cc
jmp 0x444dc8
add eax, 0xffffffd0
cmp eax, 9
ja case.0x444cdc.49
jmp dword [eax*4 + 0x444ef9]
mov edi, dword [edi + 0x10]
test edi, edi
je 0x444dc8
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x14]
call fcn.00442b99
jmp 0x444dc8
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x14]
call fcn.00442b99
mov eax, edi
call fcn.00440161
mov edi, eax
test edi, edi
jne 0x444d01
jmp 0x444dc8
cmp dword [edi + 0x14], 1
jne case.0x444cdc.52
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x14]
call fcn.00442b99
mov edi, dword [edi + 0x24]
test edi, edi
jne 0x444d21
jmp 0x444dc8
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x18]
test eax, eax
je 0x444dc8
cmp edi, dword [ebx + 0x78]
je 0x444dc8
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x18]
test eax, eax
jmp 0x444ce8
push edi
lea eax, [esp + 0x3c]
push eax
lea ebx, [esp + 0x18]
call fcn.00446a2f
mov ebx, dword [ebp + 8]
jmp 0x444dc8
mov edi, dword [edi + 0x18]
jmp 0x444d8a
cmp dword [edi + 0x14], 2
jne 0x444d87
push 0
push edi
lea esi, [esp + 0x40]
call fcn.0044693b
mov edi, dword [edi + 0x28]
test edi, edi
jne 0x444d75
jmp 0x444dc8
mov edi, dword [edi + 0x18]
jmp 0x444daa
cmp dword [edi + 0x14], 4
jne 0x444da7
push 0
push edi
lea esi, [esp + 0x40]
call fcn.0044693b
mov edi, dword [edi + 0x28]
test edi, edi
jne 0x444d95
jmp 0x444dc8
mov edi, dword [edi + 0x18]
jmp 0x444dc4
push 0
push edi
lea esi, [esp + 0x40]
call fcn.0044693b
mov edi, dword [edi + 0x28]
test edi, edi
jne 0x444db5
mov ecx, dword [esp + 0x18]
inc ecx
mov dword [esp + 0x18], ecx
cmp ecx, dword [esp + 0x24]
jae 0x444de5
mov eax, dword [esp + 0x28]
mov esi, 0x522124
jmp 0x444aed
xor ecx, ecx
cmp dword [esp + 0x1c], ecx
je 0x444e82
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], ecx
mov byte [esp + 0x68], 5
xor edi, edi
cmp dword [esp + 0x38], ecx
jbe 0x444e51
mov eax, dword [esp + 0x40]
cmp byte [eax + edi], 0
jne 0x444e4a
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax + edi*4]
mov eax, dword [ecx]
call dword [eax + 0x18]
mov esi, eax
test esi, esi
je 0x444e4a
mov eax, dword [esp + 0x20]
push dword [esp + 0x30]
mov dword [ebx + 0x30], eax
mov eax, esi
mov ecx, ebx
call fcn.00444f21
test al, al
je 0x444e4a
push 0
push esi
lea esi, [esp + 0x58]
call fcn.0044693b
inc edi
cmp edi, dword [esp + 0x38]
jb 0x444e0a
add ebx, 0x20
lea edi, [esp + 0x50]
call fcn.004427b4
mov byte [esp + 0x68], 3
mov esi, edi
call fcn.00418c69
jmp 0x444e8e
push 0x5486dc
lea eax, [esp + 0x30]
push eax
mov dword [esp + 0x34], 0xfffffffe
call fcn.004e2693
add ebx, 0x20
lea edi, [esp + 0x38]
call fcn.004427b4
mov ebx, dword [ebp + 8]
mov eax, dword [esp + 0x34]
mov dword [ebx + 0x30], eax
mov byte [esp + 0x68], 2
lea esi, [esp + 0x38]
call fcn.00418c69
mov byte [esp + 0x68], 1
lea esi, [esp + 0x44]
call fcn.00418c69
mov byte [esp + 0x68], 0
mov esi, 0x574b24
cmp dword [esp + 0x10], esi
je 0x444ece
push dword [esp + 0x10]
call fcn.004bb6a6
pop ecx
or dword [esp + 0x68], 0xffffffff
cmp dword [esp + 0x14], esi
je 0x444ee3
push dword [esp + 0x14]
call fcn.004bb6a6
pop ecx
mov ecx, dword [esp + 0x60]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8