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

Disassembly:
push 0xffffffffffffffff
push 0x6c7eb4
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xf0
push ebx
push ebp
push esi
push edi
xor esi, esi
xor edi, edi
lea ecx, [esp + 0x94]
mov dword [esp + 0x108], esi
mov dword [esp + 0x2c], edi
call fcn.0061aaa0
lea ecx, [esp + 0x28]
mov byte [esp + 0x108], 1
call fcn.0061d780
mov al, byte [esp + 0x17]
mov dword [esp + 0x1c], esi
mov byte [esp + 0x18], al
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], esi
mov ebx, 5
lea ecx, [esp + 0x114]
push ebx
mov byte [esp + 0x10c], 3
call fcn.0061daa0
push ecx
mov byte [esp + 0x38], al
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x713764
call fcn.0061d820
lea ecx, [esp + 0x48]
push ecx
call fcn.0061ca80
add esp, 8
mov edx, dword [0x6dd1fc]
lea ecx, [esp + 0x18]
push edx
push esi
push eax
mov byte [esp + 0x114], 4
call fcn.004136c0
mov eax, dword [esp + 0x48]
mov byte [esp + 0x108], 3
cmp eax, esi
je 0x542574
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x54256b
cmp al, 0xff
je 0x54256b
dec al
mov byte [ecx], al
jmp 0x542574
push ecx
call fcn.006a64d0
add esp, 4
mov eax, dword [esp + 0x34]
and eax, 0xff
sub eax, 0x16
je 0x542cc8
dec eax
jne 0x54307f
mov ecx, dword [0x71e0e8]
mov eax, dword [0x71e0e4]
mov dx, word [0x71e0ec]
mov dword [esp + 0x3c], ecx
push 0x7e3
lea ecx, [esp + 0xbc]
mov dword [esp + 0x3c], eax
mov word [esp + 0x44], dx
call fcn.0054f000
mov byte [esp + 0x108], 0xa
push ecx
lea eax, [esp + 0x118]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0061d790
mov ecx, dword [0x72baec]
call fcn.0062e250
mov esi, dword [esp + 0x2c]
xor ebp, ebp
cmp si, bp
je 0x542a10
mov al, byte [0x72bd0c]
test al, al
je 0x542611
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 4
push str.1234
call fcn.0061d820
jmp 0x54264f
sub esp, 0x24
lea edx, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x34], esp
push ebp
push 1
push edx
push ecx
lea ecx, [esp + 0xec]
call fcn.00551050
lea ecx, [esp + 0xb8]
call fcn.0061ac40
push ecx
lea ecx, [esp + 0x98]
mov eax, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0061afb0
lea ecx, [esp + 0x2c]
call fcn.0061dab0
lea ecx, [esp + 0x28]
call fcn.0061dc40
test ax, ax
jle 0x542bdd
cmp si, 1
jne 0x54279c
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x713784
call fcn.0061d820
lea ecx, [esp + 0x58]
push ecx
call fcn.0061ca80
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov ecx, dword [0x6dd1fc]
mov ebx, eax
mov byte [esp + 0x108], 0xb
cmp ecx, ebx
jae 0x5426af
mov ebx, ecx
lea edx, [esp + 0x18]
cmp edx, esi
jne 0x5426d2
push ecx
push ebx
lea ecx, [esp + 0x20]
call fcn.004140f0
push ebp
push ebp
lea ecx, [esp + 0x20]
call fcn.004140f0
jmp 0x542759
cmp ebx, ebp
jbe 0x54271f
cmp ebx, eax
jne 0x54271f
mov eax, dword [esi + 4]
cmp eax, ebp
jne 0x5426e6
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x54271f
push 1
lea ecx, [esp + 0x1c]
call fcn.004138c0
mov eax, dword [esi + 4]
cmp eax, ebp
jne 0x542703
mov eax, 0x6dd1f8
mov dword [esp + 0x1c], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x20], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x24], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x542759
push 1
push ebx
lea ecx, [esp + 0x20]
call fcn.00414230
test al, al
je 0x542759
mov esi, dword [esi + 4]
cmp esi, ebp
jne 0x54273b
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x1c]
mov ecx, ebx
mov eax, ecx
push ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x1c]
call fcn.00414210
mov eax, dword [esp + 0x58]
mov byte [esp + 0x108], 0xa
cmp eax, ebp
je 0x542786
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x54277d
cmp al, 0xff
je 0x54277d
dec al
mov byte [ecx], al
jmp 0x542786
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0x58], ebp
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x60], ebp
mov byte [esp + 0x17], 0
jmp 0x542a0c
cmp si, 2
jne 0x5428ce
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x71377c
call fcn.0061d820
lea ecx, [esp + 0x68]
push ecx
call fcn.0061ca80
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov ecx, dword [0x6dd1fc]
mov ebx, eax
mov byte [esp + 0x108], 0xc
cmp ecx, ebx
jae 0x5427e1
mov ebx, ecx
lea edx, [esp + 0x18]
cmp edx, esi
jne 0x542804
push ecx
push ebx
lea ecx, [esp + 0x20]
call fcn.004140f0
push ebp
push ebp
lea ecx, [esp + 0x20]
call fcn.004140f0
jmp 0x54288b
cmp ebx, ebp
jbe 0x542851
cmp ebx, eax
jne 0x542851
mov eax, dword [esi + 4]
cmp eax, ebp
jne 0x542818
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x542851
push 1
lea ecx, [esp + 0x1c]
call fcn.004138c0
mov eax, dword [esi + 4]
cmp eax, ebp
jne 0x542835
mov eax, 0x6dd1f8
mov dword [esp + 0x1c], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x20], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x24], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x54288b
push 1
push ebx
lea ecx, [esp + 0x20]
call fcn.00414230
test al, al
je 0x54288b
mov esi, dword [esi + 4]
cmp esi, ebp
jne 0x54286d
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x1c]
mov ecx, ebx
mov eax, ecx
push ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x1c]
call fcn.00414210
mov eax, dword [esp + 0x68]
mov byte [esp + 0x108], 0xa
cmp eax, ebp
je 0x5428b8
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x5428af
cmp al, 0xff
je 0x5428af
dec al
mov byte [ecx], al
jmp 0x5428b8
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0x68], ebp
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x70], ebp
mov byte [esp + 0x17], 0
jmp 0x542a0c
cmp si, 3
jne 0x542a0c
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x713764
call fcn.0061d820
lea ecx, [esp + 0x88]
push ecx
call fcn.0061ca80
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov ecx, dword [0x6dd1fc]
mov ebx, eax
mov byte [esp + 0x108], 0xd
cmp ecx, ebx
jae 0x542916
mov ebx, ecx
lea edx, [esp + 0x18]
cmp edx, esi
jne 0x542939
push ecx
push ebx
lea ecx, [esp + 0x20]
call fcn.004140f0
push ebp
push ebp
lea ecx, [esp + 0x20]
call fcn.004140f0
jmp 0x5429c2
cmp ebx, ebp
jbe 0x542986
cmp ebx, eax
jne 0x542986
mov eax, dword [esi + 4]
cmp eax, ebp
jne 0x54294d
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x542986
push 1
lea ecx, [esp + 0x1c]
call fcn.004138c0
mov eax, dword [esi + 4]
cmp eax, ebp
jne 0x54296a
mov eax, 0x6dd1f8
mov dword [esp + 0x1c], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x20], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x24], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x5429c2
push 1
push ebx
lea ecx, [esp + 0x20]
call fcn.00414230
test al, al
je 0x5429c2
mov esi, dword [esi + 4]
cmp esi, ebp
jne 0x5429a2
mov esi, 0x6dd1f8
mov edi, dword [esp + 0x1c]
mov ecx, ebx
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x20], ebx
mov byte [ecx + ebx], 0
mov eax, dword [esp + 0x88]
mov byte [esp + 0x108], 0xa
cmp eax, ebp
je 0x5429f2
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x5429e9
cmp al, 0xff
je 0x5429e9
dec al
mov byte [ecx], al
jmp 0x5429f2
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0x88], ebp
mov dword [esp + 0x8c], ebp
mov dword [esp + 0x90], ebp
mov byte [esp + 0x17], 1
mov dword [esp + 0x2c], ebp
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x713784
call fcn.0061d820
mov ecx, dword [0x72baec]
call fcn.0062e3d0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x71377c
call fcn.0061d820
mov ecx, dword [0x72baec]
call fcn.0062e3d0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x713774
call fcn.0061d820
mov ecx, dword [0x72baec]
call fcn.0062e3d0
mov dl, byte [esp + 0x18]
sub esp, 0x10
mov ebp, esp
xor edi, edi
mov dword [esp + 0x20], esp
mov byte [ebp], dl
mov dword [ebp + 4], edi
mov dword [ebp + 8], edi
mov dword [ebp + 0xc], edi
mov ecx, dword [esp + 0x30]
mov eax, dword [0x6dd1fc]
mov ebx, ecx
cmp eax, ebx
jae 0x542a9c
mov ebx, eax
lea edx, [esp + 0x28]
cmp ebp, edx
jne 0x542abb
push eax
push ebx
mov ecx, ebp
call fcn.004140f0
push edi
push edi
mov ecx, ebp
call fcn.004140f0
jmp 0x542b42
cmp ebx, edi
jbe 0x542b07
cmp ebx, ecx
jne 0x542b07
mov eax, dword [esp + 0x2c]
cmp eax, edi
jne 0x542ad0
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x542b07
push 1
mov ecx, ebp
call fcn.004138c0
mov eax, dword [esp + 0x2c]
cmp eax, edi
jne 0x542aec
mov eax, 0x6dd1f8
mov dword [ebp + 4], eax
mov ecx, dword [esp + 0x30]
mov dword [ebp + 8], ecx
mov edx, dword [esp + 0x34]
mov dword [ebp + 0xc], edx
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x542b42
push 1
push ebx
mov ecx, ebp
call fcn.00414230
test al, al
je 0x542b42
mov esi, dword [esp + 0x2c]
cmp esi, edi
jne 0x542b22
mov esi, 0x6dd1f8
mov edi, dword [ebp + 4]
mov ecx, ebx
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 4]
mov dword [ebp + 8], ebx
add ebx, eax
xor edi, edi
mov byte [ebx], 0
push ecx
mov byte [esp + 0x11c], 0xf
mov ecx, esp
mov dword [esp + 0x48], esp
push 6
push 0x71379c
call fcn.0061d820
mov ecx, dword [0x72baec]
mov byte [esp + 0x11c], 0xa
call fcn.0062e450
mov ecx, dword [0x72baec]
call fcn.0062e830
movsx eax, ax
sub eax, edi
je 0x542bc6
dec eax
je 0x542baf
dec eax
jne 0x5425c5
mov al, byte [esp + 0x17]
test al, al
jne 0x542ca9
mov dword [esp + 0x2c], 3
mov byte [esp + 0x3c], 0
mov byte [esp + 0x3e], 0
jmp 0x5425c5
mov byte [esp + 0x3c], 0x20
mov byte [esp + 0x3e], 0
mov dword [esp + 0x2c], 2
jmp 0x5425c5
mov byte [esp + 0x3c], 0x20
mov byte [esp + 0x3e], 2
mov dword [esp + 0x2c], 1
jmp 0x5425c5
push ebp
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x7137f4
call fcn.0061d820
push ecx
mov byte [esp + 0x118], 0xe
mov ecx, esp
mov dword [esp + 0x44], esp
push 6
push 0x713840
call fcn.0061d820
mov ecx, 0x72bae0
mov byte [esp + 0x118], 0xa
call fcn.0061ef70
lea ecx, [esp + 0xb8]
mov byte [esp + 0x108], 3
call fcn.0054f030
mov eax, dword [esp + 0x1c]
cmp eax, ebp
je 0x542c59
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x542c50
cmp al, 0xff
je 0x542c50
dec al
mov byte [ecx], al
jmp 0x542c59
push ecx
call fcn.006a64d0
add esp, 4
lea ecx, [esp + 0x28]
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebp
mov byte [esp + 0x108], 1
call fcn.0061d8c0
lea ecx, [esp + 0x94]
mov byte [esp + 0x108], 0
call fcn.0061ab90
lea ecx, [esp + 0x114]
mov dword [esp + 0x108], 0xffffffff
call fcn.0061d8c0
xor ax, ax
jmp 0x5430f0
lea ecx, [esp + 0xb8]
mov byte [esp + 0x108], 3
call fcn.0054f030
mov eax, dword [esp + 0x1c]
xor esi, esi
jmp 0x543083
mov ecx, dword [0x71e0dc]
mov dx, word [0x71e0e0]
mov al, byte [0x71e0e2]
mov dword [esp + 0x2c], ecx
push 0x7e7
lea ecx, [esp + 0xe0]
mov word [esp + 0x34], dx
mov byte [esp + 0x36], al
call fcn.0054f000
mov byte [esp + 0x108], bl
push ecx
lea edx, [esp + 0x118]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
mov ecx, dword [0x72baec]
call fcn.0062e250
cmp di, si
je 0x542eab
mov al, byte [0x72bd0c]
test al, al
je 0x542d45
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 4
push str.1234
call fcn.0061d820
jmp 0x542d83
sub esp, 0x24
lea ecx, [esp + 0x50]
mov eax, esp
mov dword [esp + 0x34], esp
push esi
push 1
push ecx
push eax
lea ecx, [esp + 0x110]
call fcn.00551050
lea ecx, [esp + 0xb8]
call fcn.0061ac40
push ecx
lea ecx, [esp + 0x98]
mov edx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061afb0
lea ecx, [esp + 0x2c]
call fcn.0061dab0
lea ecx, [esp + 0x28]
call fcn.0061dc40
test ax, ax
jle 0x542fa0
cmp di, 1
jne 0x542e31
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x713784
call fcn.0061d820
lea eax, [esp + 0x78]
push eax
call fcn.0061ca80
add esp, 8
mov ecx, dword [0x6dd1fc]
mov byte [esp + 0x108], 6
push ecx
push esi
push eax
lea ecx, [esp + 0x24]
call fcn.004136c0
mov eax, dword [esp + 0x78]
mov byte [esp + 0x108], bl
cmp eax, esi
je 0x542e20
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x542e17
cmp al, 0xff
je 0x542e17
dec al
mov byte [ecx], al
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], esi
jmp 0x542ea9
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], esi
jmp 0x542ea9
cmp di, 2
jne 0x542ea9
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x71377c
call fcn.0061d820
lea edx, [esp + 0x48]
push edx
call fcn.0061ca80
add esp, 8
mov ecx, dword [0x6dd1fc]
mov byte [esp + 0x108], 7
push ecx
push esi
push eax
lea ecx, [esp + 0x24]
call fcn.004136c0
mov eax, dword [esp + 0x48]
mov byte [esp + 0x108], bl
cmp eax, esi
je 0x542e9d
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x542e94
cmp al, 0xff
je 0x542e94
dec al
mov byte [ecx], al
jmp 0x542e9d
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], esi
xor edi, edi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x713784
call fcn.0061d820
mov ecx, dword [0x72baec]
call fcn.0062e3d0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x71377c
call fcn.0061d820
mov ecx, dword [0x72baec]
call fcn.0062e3d0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x713774
call fcn.0061d820
mov ecx, dword [0x72baec]
call fcn.0062e3d0
mov dl, byte [esp + 0x18]
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x20], esp
mov byte [ecx], dl
mov dword [ecx + 4], esi
mov dword [ecx + 8], esi
mov dword [ecx + 0xc], esi
mov eax, dword [0x6dd1fc]
lea edx, [esp + 0x28]
push eax
push esi
push edx
call fcn.004136c0
push ecx
mov byte [esp + 0x11c], 9
mov ecx, esp
mov dword [esp + 0x48], esp
push 6
push 0x71379c
call fcn.0061d820
mov ecx, dword [0x72baec]
mov byte [esp + 0x11c], bl
call fcn.0062e450
mov ecx, dword [0x72baec]
call fcn.0062e830
movsx eax, ax
sub eax, esi
je 0x542f91
dec eax
je 0x542f82
dec eax
je 0x54306b
jmp 0x542cff
mov byte [esp + 0x31], 0
mov edi, 2
jmp 0x542cff
mov byte [esp + 0x31], 0xff
mov edi, 1
jmp 0x542cff
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x7137f4
call fcn.0061d820
push ecx
mov byte [esp + 0x118], 8
mov ecx, esp
mov dword [esp + 0x44], esp
push 6
push 0x713840
call fcn.0061d820
mov ecx, 0x72bae0
mov byte [esp + 0x118], bl
call fcn.0061ef70
lea ecx, [esp + 0xdc]
mov byte [esp + 0x108], 3
call fcn.0054f030
mov eax, dword [esp + 0x1c]
cmp eax, esi
je 0x54301b
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x543012
cmp al, 0xff
je 0x543012
dec al
mov byte [ecx], al
jmp 0x54301b
push ecx
call fcn.006a64d0
add esp, 4
lea ecx, [esp + 0x28]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], esi
mov byte [esp + 0x108], 1
call fcn.0061d8c0
lea ecx, [esp + 0x94]
mov byte [esp + 0x108], 0
call fcn.0061ab90
lea ecx, [esp + 0x114]
mov dword [esp + 0x108], 0xffffffff
call fcn.0061d8c0
xor ax, ax
jmp 0x5430f0
lea ecx, [esp + 0xdc]
mov byte [esp + 0x108], 3
call fcn.0054f030
mov eax, dword [esp + 0x1c]
cmp eax, esi
je 0x5430a4
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x54309b
cmp al, 0xff
je 0x54309b
dec al
mov byte [ecx], al
jmp 0x5430a4
push ecx
call fcn.006a64d0
add esp, 4
lea ecx, [esp + 0x28]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], esi
mov byte [esp + 0x108], 1
call fcn.0061d8c0
lea ecx, [esp + 0x94]
mov byte [esp + 0x108], 0
call fcn.0061ab90
lea ecx, [esp + 0x114]
mov dword [esp + 0x108], 0xffffffff
call fcn.0061d8c0
mov ax, 1
mov ecx, dword [esp + 0x100]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0xfc
ret 8