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

Disassembly:
sub esp, 0x6c
mov eax, dword [0x887490]
xor eax, esp
mov dword [esp + 0x68], eax
push ebp
push esi
mov esi, dword [esp + 0x78]
push edi
xor edi, edi
mov ebp, dword [esi + 0x1c]
mov dword [esp + 0x18], ebp
mov al, byte [ebp + 6]
and al, 0x60
cmp al, 0x40
jne 0x544483
cmp dword [esi + 0xe4], 1
jl 0x544478
push edi
push 0x8070d0
push 7
push 0x57
push 0x811f48
push esi
call fcn.005532f0
add esp, 0x18
push esi
push 7
call fcn.00553560
add esp, 8
push esi
push 6
call fcn.00553560
add esp, 8
cmp dword [ebp + 0x50], edi
jne 0x5444b2
cmp word [ebp + 8], di
je 0x5444a9
test byte [ebp + 6], 0x10
jne 0x5444a9
push ebp
push esi
call fcn.00554dc0
add esp, 8
push esi
call fcn.00548860
add esp, 4
mov eax, dword [ebp + 0x58]
mov dword [esi + 0x1c], eax
mov edx, dword [ebp + 0x58]
mov dword [esp + 0xc], edx
mov ecx, dword [edx + 0x58]
mov eax, dword [edx]
test ecx, ecx
je 0x5444e7
mov edi, ecx
mov dword [esp + 0xc], edi
mov ecx, dword [edi]
test ecx, ecx
je 0x5444da
cmp byte [ecx], 0
cmovne eax, ecx
mov ecx, dword [edi + 0x58]
test ecx, ecx
jne 0x5444c8
mov edx, dword [esp + 0xc]
xor edi, edi
cmp byte [eax], 0
mov ecx, str.__INITSTATICS_
push ebx
cmovne ecx, eax
mov dword [esp + 0x14], 0
mov ax, word [ebp + 6]
and ax, 2
mov dword [esp + 0x18], ecx
or word [edx + 6], ax
mov edx, dword [ebp + 0x1c]
test edx, edx
je 0x54453e
cmp dword [esi + 0x134], 0
je 0x544536
mov ecx, dword [edx]
lea ebx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x544520
mov eax, dword [esp + 0x14]
sub ecx, ebx
add eax, 4
add eax, ecx
mov dword [esp + 0x14], eax
mov edx, dword [edx + 0x18]
inc edi
test edx, edx
jne 0x544512
mov ebx, dword [ebp + 0x2c]
movzx eax, di
add ebx, 2
cmp dword [esi + 0x134], 0
mov dword [esp + 0x24], eax
je 0x54458f
mov ecx, dword [esi + 0xac]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x544560
sub ecx, edx
mov edx, dword [esp + 0x18]
lea eax, [edx + 1]
mov dword [esp + 0x20], eax
mov al, byte [edx]
inc edx
test al, al
jne 0x544574
mov eax, dword [esp + 0x14]
add ebx, 3
sub edx, dword [esp + 0x20]
movzx eax, ax
add eax, edx
add eax, ecx
add ebx, eax
cmp ebx, 0xff
ja 0x5445b4
cmp word [ebp + 8], 0
jne 0x5445b4
test di, di
jne 0x5445b4
push esi
push ebx
push 0x5a
call fcn.005535d0
add esp, 0xc
jmp 0x544674
movzx eax, di
lea ecx, [eax*2 + 5]
add ecx, ebx
cmp ecx, 0xffff
ja 0x5445dc
mov eax, ecx
push esi
shr eax, 8
push eax
push ecx
push 0x59
call fcn.00553650
add esp, 0x10
jmp 0x544618
cmp ecx, 0xffffff
jae 0x544602
inc ecx
push esi
mov eax, ecx
shr eax, 0x10
push eax
mov eax, ecx
shr eax, 8
push eax
push ecx
push 0xa1
call fcn.005536e0
add esp, 0x14
jmp 0x544618
push 0
push 0
push 0x41
push 0x45
push 0x811e10
push esi
call fcn.00553250
add esp, 0x18
movzx ecx, word [ebp + 8]
mov eax, ecx
push esi
shr eax, 8
push eax
push ecx
call fcn.005535d0
mov eax, edi
push esi
shr eax, 8
push eax
push edi
call fcn.005535d0
mov ebx, dword [ebp + 0x1c]
add esp, 0x18
test di, di
je 0x544674
mov ebp, dword [esp + 0x10]
push dword [ebx]
add edi, 0xffff
push dword [ebp + 0xc]
call fcn.0054aba0
movzx ecx, ax
mov eax, ecx
push esi
shr eax, 8
push eax
push ecx
call fcn.005535d0
mov ebx, dword [ebx + 0x18]
add esp, 0x14
test di, di
jne 0x544645
mov ebp, dword [esp + 0x1c]
cmp dword [esi + 0x134], 0
je 0x5446e9
push dword [esp + 0x18]
push esi
call fcn.00546de0
mov ebx, dword [ebp + 0x1c]
add esp, 8
or edi, 0xffffffff
cmp word [esp + 0x24], 0
je 0x5446e9
mov ebp, dword [esp + 0x24]
nop dword [eax]
push esi
mov eax, edi
add ebp, 0xffff
sar eax, 8
push eax
push edi
push 0x25
call fcn.00553650
mov edx, dword [ebx]
add esp, 0x10
mov ecx, edx
lea eax, [ecx + 1]
mov dword [esp + 0x20], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5446c3
sub ecx, dword [esp + 0x20]
push esi
lea eax, [ecx + 1]
push eax
push edx
call fcn.00553780
mov ebx, dword [ebx + 0x18]
add esp, 0xc
dec edi
test bp, bp
jne 0x5446a0
mov ebp, dword [esp + 0x1c]
push esi
push dword [ebp + 0x2c]
push dword [ebp + 0x24]
call fcn.00553780
add esp, 0xc
cmp dword [esi + 0xe4], 0
je 0x5447bc
mov edi, dword [ebp + 0xc]
test edi, edi
je 0x544740
mov ebx, dword [esp + 0x18]
cmp dword [esi + 0xe4], 0
je 0x544739
mov eax, dword [edi]
test eax, eax
je 0x544739
test byte [edi + 8], 2
jne 0x544739
push ebx
push eax
push 4
push 0x57
push 0x811f48
push esi
call fcn.005532f0
add esp, 0x18
mov edi, dword [edi + 0x18]
test edi, edi
jne 0x544710
mov edi, dword [ebp + 0x10]
test edi, edi
je 0x5447bc
mov ebp, str._s__i_
nop dword [eax]
cmp dword [esi + 0xe4], 0
je 0x5447b1
mov ebx, dword [edi]
test ebx, ebx
je 0x5447b1
test byte [edi + 8], 2
jne 0x5447b1
mov edx, dword [esi + 0x108]
mov eax, dword [edi + 0xc]
test edx, edx
jne 0x544779
mov ecx, 0x8070d0
jmp 0x544780
mov ecx, eax
mov eax, 0x8070d0
push eax
test edx, edx
mov eax, str._i:_s
push ecx
cmove eax, ebp
push eax
lea eax, [esp + 0x34]
push 0x50
push eax
call fcn.004f30e0
lea eax, [esp + 0x3c]
push eax
push ebx
push 3
push 0x57
push 0x811f48
push esi
call fcn.005532f0
add esp, 0x2c
mov edi, dword [edi + 0x18]
test edi, edi
jne 0x544750
mov ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
pop ebx
mov ecx, dword [edx + 0x10]
test ecx, ecx
je 0x5447e1
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x5447d9
nop
mov ecx, eax
mov eax, dword [ecx + 0x18]
test eax, eax
jne 0x5447d0
mov eax, dword [ebp + 0x10]
mov dword [ecx + 0x18], eax
jmp 0x5447e7
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x10], eax
mov edi, dword [ebp + 0x10]
mov dword [ebp + 0x10], 0
test edi, edi
je 0x544821
push dword [edi]
lea eax, [esp + 0x28]
push str._s_b_
push 0x43
push eax
call fcn.004f30e0
push 2
lea eax, [esp + 0x38]
push eax
push esi
call fcn.0055bb70
mov dword [edi], eax
add esp, 0x1c
mov edi, dword [edi + 0x18]
test edi, edi
jne 0x5447f5
push ebp
push esi
call fcn.005462f0
mov ecx, dword [esp + 0x7c]
add esp, 8
pop edi
pop esi
pop ebp
xor ecx, esp
call fcn.005091ef
add esp, 0x6c
ret