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

Disassembly:
sub esp, 0x20
mov eax, dword [esp + 0x2c]
push ebx
push ebp
xor ebp, ebp
xor ebx, ebx
cmp eax, ebp
sete bl
xor ecx, ecx
push esi
push edi
mov edi, dword [esp + 0x34]
mov esi, dword [edi + 0x10]
mov dword [esp + 0x18], esi
cmp ebx, ebp
sete cl
cmp eax, ebp
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], ebp
mov dword [esp + 0x3c], ecx
je 0x43fed0
cmp eax, 1
je 0x43feb4
push ebp
call fcn.0044b1f0
add esp, 4
mov eax, dword [0x691ad8]
cmp esi, 0x38
ja case.default.0x43fec9
movzx edx, byte [esi + 0x4407d8]
jmp dword [edx*4 + 0x44073c]
mov eax, dword [0x691ad8]
cmp eax, ebp
mov ecx, 1
jne 0x43feec
mov eax, 0x691a10
mov dword [0x691ad8], eax
mov dword [esp + 0x10], ecx
cmp dword [0x691ad0], ebp
jne 0x43feb9
mov dword [0x691ad0], 0x691ad4
mov dword [esp + 0x14], ecx
jmp 0x43feb9
cmp ebx, ebp
je 0x440336
mov eax, dword [esp + 0x40]
mov dword [eax], 0x200
jmp 0x4405a6
cmp ebx, ebp
je 0x440336
call 0x40fc50
mov ecx, dword [esp + 0x40]
mov dword [ecx], eax
jmp 0x4405a6
cmp ebx, ebp
je 0x440336
mov edx, dword [0x691acc]
push str.CPSI
push str.___s__
push edx
call fcn.0046a5f0
mov eax, dword [esp + 0x4c]
mov ecx, dword [0x691acc]
add esp, 0xc
mov dword [eax], ecx
jmp 0x4405a6
cmp ebx, ebp
je 0x43ff77
mov edx, dword [eax + 0x48]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx]
mov dword [eax + 0x48], edx
jmp 0x4405a6
cmp ebx, ebp
je 0x43ff97
mov eax, dword [eax + 0x54]
mov ecx, dword [esp + 0x40]
mov dword [ecx], eax
jmp 0x4405a6
mov edx, dword [esp + 0x40]
mov ecx, dword [edx]
mov dword [eax + 0x54], ecx
jmp 0x4405a6
cmp ebx, ebp
je 0x43ffb7
mov edx, dword [eax + 0x4c]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov esi, dword [ecx]
mov ecx, dword [eax + 0x4c]
xor edx, edx
cmp ecx, esi
setne dl
mov dword [eax + 0x4c], esi
mov dword [esp + 0x3c], edx
jmp 0x4405a6
cmp ebx, ebp
je 0x43ffe5
mov eax, dword [eax + 4]
mov ecx, dword [esp + 0x40]
mov dword [ecx], eax
jmp 0x4405a6
cmp eax, ebp
je 0x4405a6
mov edx, dword [esp + 0x40]
mov ecx, dword [edx]
mov dword [eax + 4], ecx
jmp 0x4405a6
cmp ebx, ebp
je 0x440336
cmp dword [0x6bf424], ebp
je 0x440030
mov edx, dword [0x691acc]
push 0x66ea20
push edx
call fcn.0047e420
mov ecx, dword [esp + 0x48]
mov edx, dword [0x691acc]
add esp, 8
mov dword [ecx], edx
jmp 0x4405a6
mov eax, dword [0x691acc]
push 0x66b678
push str._genericresource_
push str._sFont_s
push eax
call fcn.0046a5f0
mov ecx, dword [esp + 0x50]
mov edx, dword [0x691acc]
add esp, 0x10
mov dword [ecx], edx
jmp 0x4405a6
cmp ebx, ebp
je 0x440336
cmp dword [0x6bf424], ebp
je 0x44007b
mov eax, dword [0x691acc]
push str.Resource_
push eax
jmp 0x440096
push str._genericresource_
jmp 0x44008f
cmp ebx, ebp
je 0x440336
push 0x66b678
mov ecx, dword [0x691acc]
push ecx
call fcn.0047e420
mov edx, dword [esp + 0x48]
mov eax, dword [0x691acc]
add esp, 8
mov dword [edx], eax
jmp 0x4405a6
cmp ebx, ebp
je 0x4400c0
mov ecx, dword [eax + 8]
mov edx, dword [esp + 0x40]
mov dword [edx], ecx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx]
mov dword [eax + 8], edx
jmp 0x4405a6
cmp ebx, ebp
je 0x440336
mov eax, dword [0x6c0eb0]
cmp eax, ebp
jne 0x4400ee
mov eax, dword [esp + 0x40]
mov dword [eax], str.No_license_ID_yet
jmp 0x4405a6
mov ecx, dword [eax + 0x30]
mov edx, dword [ecx + 0x308]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
cmp ebx, ebp
je 0x440336
mov ecx, dword [esp + 0x40]
mov dword [ecx], 0x186a0
jmp 0x4405a6
cmp ebx, ebp
je 0x44012b
mov edx, dword [eax + 0xc]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov ecx, dword [ecx]
cmp ecx, 0x186a0
jge 0x44013e
mov ecx, 0x186a0
mov dword [eax + 0xc], ecx
jmp 0x4405a6
cmp ebx, ebp
je 0x440158
mov edx, dword [eax + 0x10]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov esi, dword [ecx]
xor ecx, ecx
cmp esi, ebp
setl cl
dec ecx
and ecx, esi
mov dword [eax + 0x10], ecx
jmp 0x4405a6
cmp ebx, ebp
je 0x440182
mov edx, dword [eax + 0x14]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov esi, dword [ecx]
xor ecx, ecx
cmp esi, ebp
setl cl
dec ecx
and ecx, esi
mov dword [eax + 0x14], ecx
jmp 0x4405a6
cmp ebx, ebp
je 0x4401ac
mov edx, dword [eax + 0x18]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov ecx, dword [ecx]
cmp ecx, 0x1000
jge 0x4401bf
mov ecx, 0x1000
mov dword [eax + 0x18], ecx
jmp 0x4405a6
cmp ebx, ebp
je 0x4401d9
mov edx, dword [eax + 0x1c]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov esi, dword [ecx]
xor ecx, ecx
cmp esi, ebp
setl cl
dec ecx
and ecx, esi
mov dword [eax + 0x1c], ecx
jmp 0x4405a6
cmp ebx, ebp
je 0x440203
mov edx, dword [eax + 0x20]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx]
mov dword [eax + 0x20], edx
jmp 0x4405a6
cmp ebx, ebp
je 0x440223
mov eax, dword [eax + 0x24]
mov ecx, dword [esp + 0x40]
mov dword [ecx], eax
jmp 0x4405a6
mov edx, dword [esp + 0x40]
mov ecx, dword [edx]
mov dword [eax + 0x24], ecx
jmp 0x4405a6
cmp ebx, ebp
je 0x440243
mov edx, dword [eax + 0x28]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx]
mov dword [eax + 0x28], edx
jmp 0x4405a6
cmp ebx, ebp
je 0x440267
mov eax, dword [0x691ad0]
mov ecx, dword [eax]
mov edx, dword [esp + 0x40]
mov dword [edx], ecx
jmp 0x4405a6
mov eax, dword [esp + 0x40]
mov eax, dword [eax]
cmp eax, 0x9c40
jge 0x440279
mov eax, 0x9c40
mov ecx, dword [0x691ad0]
mov dword [ecx], eax
jmp 0x4405a6
cmp ebx, ebp
je 0x440298
mov edx, dword [eax + 0x2c]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov ecx, dword [ecx]
cmp ecx, 0x10000
jge 0x4402ab
mov ecx, 0x10000
mov dword [eax + 0x2c], ecx
jmp 0x4405a6
cmp ebx, ebp
je 0x4402c5
mov edx, dword [eax + 0x30]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx]
mov dword [eax + 0x30], edx
jmp 0x4405a6
cmp ebx, ebp
je 0x4402e5
mov eax, dword [eax + 0x34]
mov ecx, dword [esp + 0x40]
mov dword [ecx], eax
jmp 0x4405a6
mov edx, dword [esp + 0x40]
mov ecx, dword [edx]
mov dword [eax + 0x34], ecx
jmp 0x4405a6
cmp ebx, ebp
je 0x440305
mov edx, dword [eax + 0x38]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx]
mov dword [eax + 0x38], edx
jmp 0x4405a6
cmp ebx, ebp
je 0x440325
mov eax, dword [eax + 0x3c]
mov ecx, dword [esp + 0x40]
mov dword [ecx], eax
jmp 0x4405a6
cmp dword [0x6c0ea0], ebp
je 0x440336
mov edx, dword [esp + 0x40]
mov ecx, dword [edx]
mov dword [eax + 0x3c], ecx
mov dword [esp + 0x3c], ebp
jmp 0x4405a6
cmp ebx, ebp
je 0x4403b8
cmp dword [0x6c0eb0], ebp
je 0x440395
add eax, 0x58
push eax
call fcn.0043faa0
add esp, 4
test eax, eax
jne 0x440390
mov eax, dword [0x691acc]
mov byte [eax + 0x20], 0
mov edx, dword [0x6c0eb0]
mov ecx, dword [edx + 0x30]
mov edx, dword [ecx + 0x304]
push 0x20
push edx
push eax
call fcn.0047e440
mov ecx, dword [esp + 0x4c]
mov edx, dword [0x691acc]
add esp, 0xc
mov dword [ecx], edx
jmp 0x4405a6
mov eax, dword [0x691ad8]
add eax, 0x58
push eax
mov eax, dword [0x691acc]
push eax
call fcn.0047e420
mov ecx, dword [esp + 0x48]
mov edx, dword [0x691acc]
add esp, 8
mov dword [ecx], edx
jmp 0x4405a6
mov byte [eax + 0x78], 0
mov eax, dword [esp + 0x40]
mov ecx, dword [eax]
mov edx, dword [0x691ad8]
push 0x20
push ecx
add edx, 0x58
push edx
call fcn.0047e440
add esp, 0xc
jmp 0x4405a6
cmp ebx, ebp
je 0x440336
mov eax, dword [0x6c0eb0]
cmp eax, ebp
jne 0x4403fc
mov eax, dword [esp + 0x40]
mov dword [eax], str.No_product_name_yet
jmp 0x4405a6
mov ecx, dword [eax + 0x30]
mov edx, dword [ecx + 0x304]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
cmp ebx, ebp
je 0x440336
call fcn.0047e8f0
mov ecx, dword [esp + 0x40]
mov dword [ecx], eax
jmp 0x4405a6
cmp ebx, ebp
je 0x440336
call fcn.0047e8d0
mov edx, dword [esp + 0x40]
mov dword [edx], eax
jmp 0x4405a6
cmp ebx, ebp
je 0x440336
mov eax, dword [esp + 0x40]
mov ecx, dword [0x695abc]
mov dword [eax], ecx
jmp 0x4405a6
cmp ebx, ebp
je 0x440336
mov edx, dword [esp + 0x40]
mov eax, dword [0x6c0ea4]
mov dword [edx], eax
jmp 0x4405a6
add eax, 0x79
cmp ebx, ebp
je 0x44049a
mov ecx, dword [0x691acc]
push 0x20
push eax
push ecx
call fcn.0047e440
mov edx, dword [esp + 0x4c]
mov eax, dword [0x691acc]
add esp, 0xc
mov dword [edx], eax
jmp 0x4405a6
push 0x21
push ebp
push eax
call fcn.0047e890
mov ecx, dword [esp + 0x4c]
mov edx, dword [ecx]
mov eax, dword [0x691ad8]
push 0x20
push edx
add eax, 0x79
push eax
call fcn.0047e440
add esp, 0x18
jmp 0x4405a6
cmp ebx, ebp
je 0x4404d4
mov ecx, dword [eax + 0x40]
mov edx, dword [esp + 0x40]
mov dword [edx], ecx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov ecx, dword [ecx]
cmp ecx, ebp
jl 0x4404ee
cmp ecx, 0xff
jg 0x4404ee
mov dword [eax + 0x40], ecx
jmp 0x4405a6
mov edx, dword [edi]
push edx
push 0x204
call fcn.0047e830
add esp, 8
jmp 0x4405a6
add eax, 0x9a
cmp ebx, ebp
je 0x44052b
push 0x20
push eax
mov eax, dword [0x691acc]
push eax
call fcn.0047e440
mov ecx, dword [esp + 0x4c]
mov edx, dword [0x691acc]
add esp, 0xc
mov dword [ecx], edx
jmp 0x4405a6
push 0x21
push ebp
push eax
call fcn.0047e890
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax]
mov edx, dword [0x691ad8]
push 0x20
push ecx
add edx, 0x9a
push edx
call fcn.0047e440
add esp, 0x18
jmp 0x4405a6
cmp ebx, ebp
je 0x440336
mov eax, dword [eax + 0x50]
mov ecx, dword [esp + 0x40]
mov dword [ecx], eax
jmp 0x4405a6
cmp ebx, ebp
je 0x440576
mov edx, dword [eax + 0x44]
mov eax, dword [esp + 0x40]
mov dword [eax], edx
jmp 0x4405a6
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx]
mov dword [eax + 0x44], edx
jmp 0x4405a6
cmp ebx, ebp
je 0x440336
push 0x66ac4a
push 0x204
call fcn.0047e830
add esp, 8
jmp 0x4405a6
push ebp
call fcn.0044b1f0
add esp, 4
cmp dword [esp + 0x10], ebp
je 0x4405b2
mov dword [0x691ad8], ebp
cmp dword [esp + 0x14], ebp
je 0x4405be
mov dword [0x691ad0], ebp
mov ebp, dword [esp + 0x38]
push 0x66e988
push ebp
call fcn.0045a7e0
mov edi, eax
neg edi
sbb edi, edi
push 0x66e0ac
push ebp
inc edi
call fcn.0045a7e0
mov esi, eax
neg esi
sbb esi, esi
push 0x66e9d0
push ebp
inc esi
call fcn.0045a7e0
add esp, 0x18
neg eax
sbb eax, eax
inc eax
test ebx, ebx
jne 0x440702
test edi, edi
jne 0x440611
test esi, esi
jne 0x440611
test eax, eax
je 0x440702
mov ecx, dword [0x6c0eb0]
test ecx, ecx
je 0x440702
mov ecx, dword [ecx + 0x30]
mov edx, dword [ecx + 0x2f0]
test edx, edx
je 0x440702
test eax, eax
mov ebx, dword [esp + 0x34]
mov ecx, dword [ebx]
mov dword [esp + 0x1c], ecx
je 0x4406a9
push 7
push str.system.
push ecx
call fcn.0045a810
add esp, 0xc
test eax, eax
jne 0x440670
mov edx, dword [ebx]
push 0x2e
push edx
mov esi, 1
mov ebp, 0x66e0ac
call fcn.0047e4f0
add esp, 8
inc eax
mov dword [esp + 0x1c], eax
jmp 0x4406a9
mov eax, dword [ebx]
push 5
push str.user.
push eax
call fcn.0045a810
add esp, 0xc
test eax, eax
jne 0x44069f
mov ecx, dword [ebx]
push 0x2e
push ecx
mov ebp, 0x66e988
call fcn.0047e4f0
add esp, 8
inc eax
mov dword [esp + 0x1c], eax
jmp 0x4406ad
push 0
call fcn.0044b1f0
add esp, 4
test edi, edi
je 0x4406ba
mov edx, dword [0x6c0eb0]
mov eax, dword [edx + 4]
test eax, eax
jne 0x4406ca
test esi, esi
je 0x440702
mov eax, dword [0x6c0eb0]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x440702
mov eax, dword [esp + 0x18]
cmp eax, 0x23
je 0x440702
cmp eax, 0x24
je 0x440702
lea ecx, [esp + 0x1c]
push ecx
push ebp
call fcn.0043fc90
mov edx, dword [0x6c0eb0]
mov eax, dword [edx + 0x30]
mov ecx, dword [eax + 0x328]
push ecx
lea edx, [esp + 0x28]
push edx
push ebp
call dword [eax + 0x2f0]
add esp, 0x14
mov ecx, dword [0x691ad8]
test ecx, ecx
pop edi
pop esi
pop ebp
pop ebx
je 0x440735
cmp dword [ecx], 0
jne 0x44072e
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x440726
mov eax, dword [0x6c0ea0]
test eax, eax
je 0x44072e
xor eax, eax
mov dword [ecx], eax
add esp, 0x20
ret
mov eax, 1
mov dword [ecx], eax
add esp, 0x20
ret