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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff44
push ebx
push esi
push edi
mov dword [ebp - 0x14], edx
mov esi, eax
mov eax, esi
mov edx, dword [0x5495a4]
call fcn.004052f8
test al, al
je 0x54cb2a
mov ebx, esi
mov eax, dword [ebx + 0x2a4]
mov dword [ebp - 8], eax
xor edi, edi
mov eax, ebx
call fcn.0054a874
mov dword [ebp - 0x10], eax
mov eax, dword [ebx + 0x2c8]
mov dword [ebp - 0x20], eax
lea edx, [ebp - 0x90]
mov eax, ebx
call fcn.0054a99c
mov dword [ebp - 0x24], 1
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x5c]
mov byte [ebp - 0x25], al
xor eax, eax
mov dword [ebp - 0x2c], eax
mov eax, ebx
call fcn.0054a404
cmp eax, 2
sete byte [ebp - 0x2d]
mov byte [ebp - 0x35], 0
mov eax, ebx
call fcn.0054a404
mov dword [ebp - 0x34], eax
movzx eax, byte [0x54d54c]
mov byte [ebp - 0x26], al
movzx eax, byte [ebx + 0x301]
mov byte [ebp - 0x36], al
jmp 0x54cc6a
mov eax, esi
mov edx, dword [0x6999ec]
call fcn.004052f8
test al, al
je 0x54cbcc
mov ebx, esi
mov eax, dword [ebx + 0x31c]
mov dword [ebp - 8], eax
mov eax, ebx
call fcn.004e7b20
mov edi, eax
mov eax, dword [ebx + 0x318]
mov dword [ebp - 0x10], eax
mov eax, dword [ebx + 0x2e4]
mov dword [ebp - 0x20], eax
lea edx, [ebp - 0x90]
mov eax, ebx
call fcn.0054da24
mov eax, ebx
call fcn.004e7e30
and eax, 0x7f
mov dword [ebp - 0x24], eax
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x5c]
mov byte [ebp - 0x25], al
mov eax, dword [ebx + 0x310]
mov dword [ebp - 0x2c], eax
mov eax, ebx
call fcn.0054d968
mov byte [ebp - 0x2d], al
movzx eax, byte [ebx + 0x30d]
mov byte [ebp - 0x35], al
mov eax, ebx
mov edx, dword [eax]
call dword [edx + pe_nt_image_headers32]
mov dword [ebp - 0x34], eax
movzx eax, byte [ebx + 0x30c]
mov byte [ebp - 0x26], al
movzx eax, byte [ebx + 0x344]
mov byte [ebp - 0x36], al
jmp 0x54cc6a
mov eax, esi
mov edx, dword [0x554f98]
call fcn.004052f8
test al, al
je 0x54d544
mov eax, dword [esi + 0x20c]
mov dword [ebp - 8], eax
mov eax, esi
call fcn.004e6df4
mov edi, eax
mov eax, dword [esi + 0x208]
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 0x1e0]
mov dword [ebp - 0x20], eax
lea edx, [ebp - 0x90]
mov eax, esi
mov ecx, dword [eax]
call dword [ecx + 0xcc]
mov eax, esi
call fcn.004e6e1c
and eax, 0x7f
mov dword [ebp - 0x24], eax
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x5c]
mov byte [ebp - 0x25], al
mov eax, dword [esi + 0x200]
mov dword [ebp - 0x2c], eax
movzx eax, byte [esi + 0x1b8]
mov byte [ebp - 0x2d], al
movzx eax, byte [esi + 0x1fd]
mov byte [ebp - 0x35], al
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0xc4]
mov dword [ebp - 0x34], eax
movzx eax, byte [esi + 0x1fc]
mov byte [ebp - 0x26], al
movzx eax, byte [esi + 0x232]
mov byte [ebp - 0x36], al
xor edx, edx
mov eax, dword [ebp - 0x20]
call fcn.00584dbc
test al, al
je 0x54ccc7
mov eax, dword [ebp - 0x20]
call fcn.005847c8
mov eax, dword [eax + 0xc8]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx + 0x28]
mov ecx, edx
shl edx, 6
add edx, ecx
mov edx, dword [eax + edx*4 + 0x98]
cmp dword [ebp - 0x34], 0
sete al
and al, byte [ebp - 0x35]
jne 0x54ccb6
cmp byte [ebp - 0x25], 0
jne 0x54ccb2
test byte [ebp - 0x26], 2
jne 0x54ccb6
xor eax, eax
jmp 0x54ccb8
mov al, 1
mov ecx, 0x1fffffff
call fcn.005b66e8
mov dword [ebp - 0x3c], eax
jmp 0x54ccfe
mov eax, 0xff00000f
call fcn.00457654
mov edx, eax
cmp dword [ebp - 0x34], 0
sete al
and al, byte [ebp - 0x35]
jne 0x54ccef
cmp byte [ebp - 0x25], 0
jne 0x54cceb
test byte [ebp - 0x26], 2
jne 0x54ccef
xor eax, eax
jmp 0x54ccf1
mov al, 1
mov ecx, 0x1fffffff
call fcn.005b66e8
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x14], 0
jne 0x54cd12
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x44]
call fcn.0045f2e4
mov dword [ebp - 0x14], eax
test edi, edi
je 0x54d1ce
mov eax, edi
mov edx, dword [eax]
call dword [edx + 0x20]
test al, al
jne 0x54d1ce
mov eax, edi
call fcn.0045f3e4
test al, al
je 0x54cd3e
cmp byte [ebp - 0x25], 0
jne 0x54cde7
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x50], eax
mov eax, dword [edi + 0x14]
mov dword [ebp - 0x4c], eax
xor eax, eax
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], eax
xor edx, edx
mov eax, edi
mov ecx, dword [eax]
call dword [ecx + 0x78]
mov eax, edi
mov edx, dword [eax]
call dword [edx + 0x70]
test eax, eax
je 0x54cddb
mov eax, edi
call fcn.0045f3e4
cmp al, 7
jne 0x54cddb
mov byte [ebp - 0x41], 0
mov eax, edi
mov edx, dword [eax]
call dword [edx + 0x24]
dec eax
test eax, eax
jl 0x54cdcc
inc eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x1c], 0
mov edx, dword [ebp - 0x1c]
mov eax, edi
call fcn.0045f468
mov dword [ebp - 0x40], eax
mov eax, edi
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, eax
dec ecx
test ecx, ecx
jl 0x54cdbe
inc ecx
xor ebx, ebx
mov eax, dword [ebp - 0x40]
cmp byte [eax + ebx*4 + 3], 0xff
jne 0x54cdba
mov byte [ebp - 0x41], 1
jmp 0x54cdbe
inc ebx
dec ecx
jne 0x54cdaa
cmp byte [ebp - 0x41], 0
jne 0x54cdcc
inc dword [ebp - 0x1c]
dec dword [ebp - 0x54]
jne 0x54cd8c
cmp byte [ebp - 0x41], 0
jne 0x54cddb
mov dl, 6
mov eax, edi
call fcn.00460640
mov eax, dword [ebp - 0x50]
mov dword [edi + 0x10], eax
mov eax, dword [ebp - 0x4c]
mov dword [edi + 0x14], eax
mov eax, edi
call fcn.0045f3e4
cmp al, 7
jne 0x54d0d0
lea eax, [ebp - 0x90]
xor edx, edx
call fcn.005b681c
mov edx, dword [ebp - 0x24]
dec edx
cmp edx, dword [ebp - 0x34]
jle 0x54ce0f
mov edx, dword [ebp - 0x34]
imul edx
mov dword [ebp - 0xa0], eax
xor eax, eax
mov dword [ebp - 0x9c], eax
lea eax, [ebp - 0x90]
xor edx, edx
call fcn.005b681c
add eax, dword [ebp - 0xa0]
mov dword [ebp - 0x98], eax
mov eax, edi
mov edx, dword [eax]
call dword [edx + 0x24]
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x44]
call fcn.0045f2e4
cmp eax, dword [ebp - 0x14]
jne 0x54ce9c
mov eax, edi
mov edx, dword [eax]
call dword [edx + 0x70]
push edi
mov eax, dword [0x6a71ec]
push eax
push 0
mov eax, dword [ebp - 0x3c]
push eax
cmp dword [ebp - 0x34], 0
sete al
xor ecx, ecx
mov edx, dword [ebp - 0x2c]
call fcn.005b66e8
push eax
movzx eax, byte [ebp - 0x36]
push eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + 0x44]
lea edx, [ebp - 0xa0]
lea eax, [ebp - 0x90]
call fcn.0055fce0
jmp 0x54d544
mov dl, 1
mov eax, dword [0x58ba2c]
call fcn.0058df00
mov dword [ebp - 0x18], eax
mov dl, 7
mov eax, dword [ebp - 0x18]
call fcn.00460640
lea eax, [ebp - 0x90]
xor edx, edx
call fcn.005b681c
mov edx, eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
call dword [ecx + 0x44]
lea eax, [ebp - 0x90]
xor edx, edx
call fcn.005b6830
mov edx, eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0xcc0020
mov eax, dword [ebp - 0x9c]
push eax
mov eax, dword [ebp - 0xa0]
push eax
mov eax, edi
call fcn.0045f2e4
call fcn.00459a4c
push eax
mov eax, edi
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
push eax
push 0
push 0
mov eax, dword [ebp - 0x18]
call fcn.0045f2e4
call fcn.00459a4c
push eax
call sub.gdi32.dll_BitBlt
mov eax, dword [ebp - 0x18]
movzx edx, byte [ebp - 0x36]
mov byte [eax + 0xa8], dl
cmp byte [ebp - 0x25], 0
jne 0x54cf5f
test byte [ebp - 0x26], 1
je 0x54cf5f
cmp dword [ebp - 0x2c], 0x32
jge 0x54cf53
mov dword [ebp - 0x58], 0x32
jmp 0x54cf59
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x34], 0
jne 0x54cfc9
cmp dword [ebp - 0x2c], 0
je 0x54cfc9
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x24]
dec eax
test eax, eax
jl 0x54cfc9
inc eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x1c], 0
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
call fcn.0045f468
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, eax
dec ecx
test ecx, ecx
jl 0x54cfc1
inc ecx
xor ebx, ebx
mov eax, dword [ebp - 0x40]
movzx eax, byte [eax + ebx*4 + 3]
imul dword [ebp - 0x2c]
mov edi, 0x64
cdq
idiv edi
mov edx, dword [ebp - 0x40]
mov byte [edx + ebx*4 + 3], al
inc ebx
dec ecx
jne 0x54cfa3
inc dword [ebp - 0x1c]
dec dword [ebp - 0x54]
jne 0x54cf83
cmp byte [ebp - 0x25], 0
jne 0x54cfd5
test byte [ebp - 0x26], 2
jne 0x54cfe1
cmp dword [ebp - 0x34], 0
sete al
and al, byte [ebp - 0x35]
je 0x54cfe9
mov eax, dword [ebp - 0x18]
call fcn.0055d6d0
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x44]
call fcn.0045f2e4
cmp eax, dword [ebp - 0x14]
jne 0x54d01e
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x44]
call fcn.0045f2e4
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x90]
mov ebx, dword [eax]
call dword [ebx + 0x3c]
jmp 0x54d0be
mov edx, dword [esi + 0x4c]
mov eax, dword [esi + 0x48]
call fcn.005621b8
mov dword [ebp - 4], eax
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 0x14]
call fcn.00459a4c
push eax
mov eax, dword [esi + 0x4c]
push eax
mov eax, dword [esi + 0x48]
push eax
push 0
push 0
mov eax, dword [ebp - 4]
call fcn.0045f2e4
call fcn.00459a4c
push eax
call sub.gdi32.dll_BitBlt
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebp - 4]
call fcn.0045f2e4
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x90]
mov ebx, dword [eax]
call dword [ebx + 0x3c]
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 4]
call fcn.0045f2e4
call fcn.00459a4c
push eax
mov eax, dword [esi + 0x4c]
push eax
mov eax, dword [esi + 0x48]
push eax
push 0
push 0
mov eax, dword [ebp - 0x14]
call fcn.00459a4c
push eax
call sub.gdi32.dll_BitBlt
mov eax, dword [ebp - 4]
mov dword [ebp - 0x5c], eax
xor eax, eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x5c]
call fcn.004050dc
mov eax, dword [ebp - 0x18]
xor edx, edx
mov dword [ebp - 0x18], edx
call fcn.004050dc
jmp 0x54d544
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x44]
call fcn.0045f2e4
cmp eax, dword [ebp - 0x14]
je 0x54d196
mov edx, dword [esi + 0x4c]
mov eax, dword [esi + 0x48]
call fcn.005621b8
mov dword [ebp - 4], eax
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 0x14]
call fcn.00459a4c
push eax
mov eax, dword [esi + 0x4c]
push eax
mov eax, dword [esi + 0x48]
push eax
push 0
push 0
mov eax, dword [ebp - 4]
call fcn.0045f2e4
call fcn.00459a4c
push eax
call sub.gdi32.dll_BitBlt
mov eax, dword [ebp - 0x24]
push eax
movzx eax, byte [ebp - 0x25]
push eax
movzx eax, byte [ebp - 0x26]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x2c]
push eax
movzx eax, byte [ebp - 0x2d]
push eax
movzx eax, byte [ebp - 0x36]
push eax
lea ecx, [ebp - 0x90]
mov edx, dword [ebp - 4]
mov eax, edi
call fcn.0055cfe4
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 4]
call fcn.0045f2e4
call fcn.00459a4c
push eax
mov eax, dword [esi + 0x4c]
push eax
mov eax, dword [esi + 0x48]
push eax
push 0
push 0
mov eax, dword [ebp - 0x14]
call fcn.00459a4c
push eax
call sub.gdi32.dll_BitBlt
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [ebp - 4], edx
call fcn.004050dc
jmp 0x54d544
mov eax, dword [ebp - 0x24]
push eax
movzx eax, byte [ebp - 0x25]
push eax
movzx eax, byte [ebp - 0x26]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x2c]
push eax
movzx eax, byte [ebp - 0x2d]
push eax
movzx eax, byte [ebp - 0x36]
push eax
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 0x44]
lea ecx, [ebp - 0x90]
mov eax, edi
call fcn.0055cfe4
jmp 0x54d544
cmp dword [ebp - 8], 0
je 0x54d544
cmp dword [ebp - 0x10], 0xffffffff
jle 0x54d544
mov eax, dword [ebp - 8]
call fcn.0054c9bc
cmp eax, dword [ebp - 0x10]
jle 0x54d544
lea esi, [ebp - 0x90]
lea edi, [ebp - 0x80]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 8]
mov edx, dword [0x5b7880]
call fcn.004052f8
test al, al
je 0x54d332
xor edx, edx
mov eax, dword [ebp - 0x20]
call fcn.00584dbc
test al, al
je 0x54d2aa
cmp dword [ebp - 0x34], 0
sete al
xor ecx, ecx
mov edx, dword [ebp - 0x2c]
call fcn.005b66e8
mov esi, eax
cmp byte [ebp - 0x25], 0
jne 0x54d247
test byte [ebp - 0x26], 1
jne 0x54d24b
xor eax, eax
jmp 0x54d24d
mov al, 1
xor ecx, ecx
mov edx, 0x32
call fcn.005b66e8
mov dword [ebp - 0x60], eax
cmp esi, dword [ebp - 0x60]
jle 0x54d266
mov dword [ebp - 0x64], esi
jmp 0x54d26c
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x7c]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x64]
push eax
mov eax, dword [ebp - 0x3c]
push eax
movzx eax, byte [ebp - 0x2d]
add eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x24]
push eax
movzx eax, byte [ebp - 0x36]
push eax
lea eax, [ebp - 0xa8]
push eax
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 0x44]
mov ecx, dword [ebp - 0x80]
mov eax, dword [ebp - 8]
call fcn.005b7ee8
jmp 0x54d544
mov eax, dword [ebp - 0x14]
call fcn.00459a4c
mov esi, eax
cmp dword [ebp - 0x34], 0
sete al
xor ecx, ecx
mov edx, dword [ebp - 0x2c]
call fcn.005b66e8
mov dword [ebp - 0x68], eax
cmp byte [ebp - 0x25], 0
jne 0x54d2d4
test byte [ebp - 0x26], 1
jne 0x54d2d8
xor eax, eax
jmp 0x54d2da
mov al, 1
xor ecx, ecx
mov edx, 0x32
call fcn.005b66e8
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x68]
cmp eax, dword [ebp - 0x6c]
jle 0x54d2f9
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x70], eax
jmp 0x54d2ff
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x7c]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x3c]
push eax
movzx eax, byte [ebp - 0x2d]
add eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x24]
push eax
movzx eax, byte [ebp - 0x36]
push eax
mov ecx, dword [ebp - 0x80]
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.005b80a8
jmp 0x54d544
mov dl, 1
mov eax, dword [0x45539c]
call fcn.0045e9c4
mov dword [ebp - 4], eax
xor edx, edx
push ebp
push 0x54d53d
push dword fs:[edx]
mov dword fs:[edx], esp
push ebp
call fcn.0054c9cc
pop ecx
xor edx, edx
mov eax, dword [ebp - 0x20]
call fcn.00584dbc
test al, al
je 0x54d4c8
cmp byte [ebp - 0x25], 0
jne 0x54d411
test byte [ebp - 0x26], 2
je 0x54d39d
mov eax, dword [ebp - 4]
call fcn.0045f2e4
xor ecx, ecx
xor edx, edx
mov ebx, dword [eax]
call dword [ebx + 0x18]
mov dword [ebp - 0xac], eax
mov edx, dword [ebp - 0xac]
mov eax, dword [ebp - 4]
call fcn.0055d75c
test byte [ebp - 0x26], 1
je 0x54d3f3
mov eax, dword [ebp - 4]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
lea eax, [ebp - 0xbc]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.00434c3c
lea eax, [ebp - 0xbc]
push eax
push 0x3fe00000
push 0
push 0xff00ff
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x44]
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x80]
call fcn.0055f104
jmp 0x54d522
mov eax, dword [ebp - 0x7c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x44]
mov ecx, dword [ebp - 0x80]
mov edx, dword [ebp - 4]
call fcn.00561878
jmp 0x54d522
mov eax, dword [ebp - 0x20]
call fcn.005844c8
xor al, 1
and al, byte [ebp - 0x35]
je 0x54d445
mov eax, dword [ebp - 4]
call fcn.0045f2e4
xor ecx, ecx
xor edx, edx
mov ebx, dword [eax]
call dword [ebx + 0x18]
mov dword [ebp - 0xac], eax
mov edx, dword [ebp - 0xac]
mov eax, dword [ebp - 4]
call fcn.0055d75c
mov eax, dword [ebp - 0x20]
call fcn.005844c8
test al, al
jne 0x54d4ad
cmp dword [ebp - 0x2c], 0
jle 0x54d4ad
mov eax, dword [ebp - 4]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x24]
push eax
lea eax, [ebp - 0xbc]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x30]
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.00434c3c
lea eax, [ebp - 0xbc]
push eax
fild dword [ebp - 0x2c]
fdiv dword [0x54d550]
add esp, 0xfffffff8
fstp qword [esp]
wait
push 0xff00ff
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x44]
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x80]
call fcn.0055f104
jmp 0x54d522
mov eax, dword [ebp - 0x7c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x44]
mov ecx, dword [ebp - 0x80]
mov edx, dword [ebp - 4]
call fcn.00561878
jmp 0x54d522
mov dl, 1
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov edx, 0xff00ff
mov eax, dword [ebp - 4]
call fcn.004607a8
cmp byte [ebp - 0x25], 0
jne 0x54d510
test byte [ebp - 0x26], 2
je 0x54d510
mov eax, dword [ebp - 4]
call fcn.0045f2e4
xor ecx, ecx
xor edx, edx
mov ebx, dword [eax]
call dword [ebx + 0x18]
mov dword [ebp - 0xac], eax
mov edx, dword [ebp - 0xac]
mov eax, dword [ebp - 4]
call fcn.0055d75c
mov eax, dword [ebp - 4]
push eax
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x14]
mov ebx, dword [eax]
call dword [ebx + 0x3c]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x54d544
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [ebp - 4], edx
call fcn.004050dc
ret
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret