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

Disassembly:
push 0xffffffffffffffff
push 0x556c88
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x68
push ebx
push ebp
push esi
mov esi, ecx
push edi
lea ecx, [esp + 0x3c]
call fcn.00477df0
xor ebp, ebp
lea eax, [esp + 0x3c]
push ebp
push ebp
push ebp
push eax
mov ecx, esi
mov dword [esp + 0x90], ebp
call fcn.00481820
mov edi, dword [esp + 0x88]
cmp edi, 0x1010023
jne 0x4a76b5
mov ecx, dword [esi + 0x80]
or edi, 0xffffffff
mov dword [esi + 0x7c], ecx
lea ecx, [esi + 0xa4]
mov dword [esi + 0x9c], edi
mov dword [esi + 0x98], edi
mov dword [esi + 0x94], edi
mov dword [esi + 0x90], edi
mov dword [esi + 0xa0], ebp
call fcn.00477ff0
lea ecx, [esi + 0xb8]
call fcn.00477ff0
push SysReAllocString
push ebp
mov ecx, esi
call fcn.004ab6b0
mov edx, dword [esi + 0x1c]
push ebp
push ebp
push edx
call dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, dword [esi + 0x1c]
push eax
call dword [sym.imp.USER32.dll_UpdateWindow]
mov dword [esp + 0x80], edi
mov dword [esp + 0x3c], 0x55f890
jmp 0x4a884d
xor ecx, ecx
mov eax, 0x5a68fc
mov dword [esp + 0x14], ecx
mov ebx, 4
cmp edi, dword [eax]
je 0x4a76d4
add eax, ebx
cmp eax, 0x5a6914
jl 0x4a76c5
jmp 0x4a76dd
mov ecx, 1
mov dword [esp + 0x14], ecx
cmp ecx, ebp
mov dword [esp + 0x10], ebp
jne 0x4a7800
cmp edi, 0x101001b
je 0x4a771d
cmp edi, 0x101001c
je 0x4a771d
mov eax, 0x5a6914
cmp edi, dword [eax]
je 0x4a7710
add eax, ebx
cmp eax, 0x5a692c
jl 0x4a76fe
jmp 0x4a7885
mov dword [esp + 0x10], 1
jmp 0x4a77e7
mov ecx, dword [0x5ada84]
mov dword [esp + 0x18], ecx
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 1
call fcn.005270ca
lea edx, [esp + 0x3c]
lea eax, [esp + 0x64]
push edx
mov edx, dword [esi + 0x78]
push ebp
lea ecx, [esp + 0x20]
push eax
mov eax, dword [esi + 0x74]
push ecx
push edx
push eax
mov ecx, esi
mov byte [esp + 0x98], 2
call fcn.0049af40
cmp eax, ebp
je 0x4a77ba
mov edx, dword [esi + 0x80]
lea ecx, [esp + 0x64]
push ecx
push eax
lea eax, [esp + 0x34]
push edx
push eax
mov ecx, esi
call fcn.0049b780
mov ecx, dword [eax]
cmp edi, 0x101001b
mov dword [esp + 0x24], ecx
mov eax, dword [eax + 4]
jne 0x4a7796
xor edx, edx
cmp eax, ebp
sete dl
jmp 0x4a77a2
mov ecx, dword [esp + 0x6c]
xor edx, edx
dec ecx
cmp eax, ecx
setge dl
mov eax, edx
cmp eax, ebp
je 0x4a77b2
mov dword [esp + 0x14], 1
jmp 0x4a77ba
mov dword [esp + 0x10], 1
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 1
call fcn.005270fd
lea ecx, [esp + 0x18]
mov byte [esp + 0x80], 0
call fcn.0052801f
cmp dword [esp + 0x10], 1
jne 0x4a787b
cmp dword [esi + 0x90], 0xffffffff
je 0x4a787b
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], ebp
mov ecx, dword [esi + 0x90]
or eax, 0xffffffff
cmp ecx, eax
je 0x4a782a
cmp dword [esi + 0x98], eax
je 0x4a78e7
mov eax, dword [esi + 0x74]
mov ecx, dword [esi + 0x9c]
cmp eax, ecx
je 0x4a78e7
lea edi, [esi + 0xa4]
or eax, 0xffffffff
mov ecx, edi
mov dword [esi + 0x9c], eax
mov dword [esi + 0x98], eax
mov dword [esi + 0x94], eax
mov dword [esi + 0x90], eax
mov dword [esi + 0xa0], ebp
call fcn.00477ff0
mov ecx, dword [esi + 0x74]
mov edx, dword [esi + 0x78]
mov dword [esi + 0x90], ecx
mov dword [esi + 0x94], edx
mov dword [edi + 0x10], ebp
mov eax, dword [esi + 0xc8]
cmp eax, ebp
jne 0x4a78c8
xor ecx, ecx
jmp 0x4a78ce
cmp dword [esp + 0x14], ebp
jne 0x4a7800
xor ecx, ecx
mov eax, 0x5a68c0
cmp edi, dword [eax]
je 0x4a789a
add eax, ebx
inc ecx
cmp eax, 0x5a68fc
jl 0x4a788c
cmp ecx, 0xf
jne 0x4a78b9
mov edx, dword [esp + 0x10]
xor eax, eax
cmp edx, ebp
push 1
sete al
lea ecx, [esp + 0x40]
push eax
push ecx
mov ecx, esi
call fcn.004ab3b0
cmp dword [esp + 0x10], ebp
je 0x4a78e7
mov edx, dword [esi + 0x7c]
mov dword [esp + 0x2c], edx
jmp 0x4a78e7
mov ecx, dword [esi + 0xc0]
push eax
push ecx
mov ecx, edi
call fcn.004786b0
mov eax, dword [esi + 0x7c]
mov edi, dword [esp + 0x88]
mov dword [esi + 0xa0], eax
mov ecx, dword [esi + 0x74]
mov edx, dword [esi + 0x78]
mov dword [esp + 0x18], ecx
lea ecx, [esp + 0x50]
mov dword [esp + 0x1c], edx
call fcn.00477df0
mov eax, dword [esi + 0x5c]
mov byte [esp + 0x80], 3
cmp dword [eax + 0x2d8], 1
je 0x4a7929
cmp dword [eax + 0x2d4], ebp
jne 0x4a7929
mov eax, dword [esi]
lea ecx, [esp + 0x50]
push ecx
mov ecx, esi
call dword [eax + 0xd0]
lea eax, [edi - 0x1010001]
cmp eax, 0x41
ja case.0x4a7940.16842786
xor edx, edx
mov dl, byte [eax + 0x4a8930]
jmp dword [edx*4 + 0x4a88a8]
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0x90]
push ebp
push 1
push ebp
push eax
push ecx
mov ecx, esi
call fcn.004aa400
jmp 0x4a8694
cmp dword [esi + 0x90], 0xffffffff
je case.0x4a7940.16842753
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
je case.0x4a7940.16842753
cmp eax, dword [esi + 0x74]
jne case.0x4a7940.16842753
mov ecx, esi
call fcn.004b06c0
mov ecx, dword [esi + 0x74]
dec eax
cmp ecx, eax
je 0x4a8682
cmp edi, 0x1010001
je 0x4a7a76
cmp edi, 0x101001b
je 0x4a7a76
mov edi, dword [esi + 0x74]
mov ecx, esi
call fcn.004b06c0
dec eax
cmp edi, eax
jne 0x4a7a6f
cmp dword [esp + 0x88], 0x1010002
jne 0x4a8682
push ebp
push ebp
push ebp
lea edx, [esp + 0x2c]
push ebp
lea eax, [esp + 0xa4]
push edx
push eax
push ebp
push ebp
push edi
mov ecx, esi
call fcn.00483210
cmp eax, 0xd
jne 0x4a8682
mov ecx, dword [esp + 0x94]
cmp dword [ecx + 0xcc], ebp
jne 0x4a7a06
xor edx, edx
jmp 0x4a7a0c
mov edx, dword [ecx + 0xc4]
cmp dword [ecx + 0x68], ebp
jne 0x4a7a15
xor eax, eax
jmp 0x4a7a18
mov eax, dword [ecx + 0x60]
mov edi, dword [esp + 0x20]
mov eax, dword [eax + edi*4]
lea edi, [eax + edx]
push edi
call fcn.004d2100
cmp eax, 1
jne 0x4a8682
cmp byte [edi], 0x6a
jne 0x4a7a46
lea ecx, [edi + 1]
call fcn.004cec80
test eax, eax
jne 0x4a8682
mov edx, dword [esi]
push ebp
push ebp
push 2
push 0x2020002
mov ecx, esi
call dword [edx + 0xe0]
mov eax, dword [esi + 0x74]
push ebp
push 1
push ebp
inc eax
push ebp
push eax
mov ecx, esi
call fcn.004aa400
jmp 0x4a8682
mov edi, 1
jmp 0x4a7a82
cmp dword [esi + 0x74], ebp
je 0x4a8682
or edi, 0xffffffff
mov ecx, dword [0x5ada84]
mov dword [esp + 0x90], ecx
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], bl
call fcn.005270ca
lea edx, [esp + 0x3c]
lea eax, [esp + 0x64]
push edx
mov edx, dword [esi + 0x78]
push ebp
lea ecx, [esp + 0x98]
push eax
mov eax, dword [esi + 0x74]
push ecx
push edx
push eax
mov ecx, esi
mov byte [esp + 0x98], 5
call fcn.0049af40
cmp eax, ebp
je 0x4a7b46
mov edx, dword [esi + 0x80]
lea ecx, [esp + 0x64]
push ecx
push eax
lea eax, [esp + 0x3c]
push edx
push eax
mov ecx, esi
call fcn.0049b780
mov ecx, dword [eax]
cmp edi, 0xffffffff
mov dword [esp + 0x24], ecx
mov eax, dword [eax + 4]
mov dword [esp + 0x28], eax
jne 0x4a7b34
cmp eax, ebp
jle 0x4a7b46
lea edx, [esp + 0x3c]
dec eax
push edx
push ecx
push eax
mov ecx, esi
call fcn.0049b070
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], bl
call fcn.005270fd
lea ecx, [esp + 0x90]
mov byte [esp + 0x80], 3
call fcn.0052801f
jmp 0x4a8682
mov edx, dword [esp + 0x6c]
dec edx
cmp eax, edx
jge 0x4a7b46
lea edx, [esp + 0x3c]
inc eax
push edx
push ecx
jmp 0x4a7b03
lea eax, [esp + 0x24]
lea ecx, [esp + 0x3c]
push eax
push ecx
mov ecx, esi
call fcn.0049b580
mov ecx, dword [esi + 0x74]
mov eax, dword [esi + 0x78]
push ebp
lea edx, [esp + 0x40]
push 1
push edx
add ecx, edi
push eax
push ecx
mov ecx, esi
call fcn.004aa400
push 1
push ebp
push ebp
mov ecx, esi
call fcn.004aae30
test eax, eax
je 0x4a7b8e
push ebp
push ebp
lea edx, [esp + 0x44]
push ebp
push edx
mov ecx, esi
call fcn.00481820
mov edx, dword [esp + 0x24]
xor ecx, ecx
cmp edi, 0xffffffff
lea eax, [esp + 0x3c]
setne cl
push eax
push ecx
push edx
mov ecx, esi
call fcn.004a4fc0
jmp 0x4a7b0b
push ebp
lea eax, [esp + 0x40]
push 1
push eax
push ebp
push ebp
mov ecx, esi
call fcn.004aa400
jmp 0x4a8682
mov ecx, esi
call fcn.004b06c0
mov edi, eax
push ebp
dec edi
mov ecx, esi
push edi
call fcn.0049e5b0
cmp eax, 0xffffffff
je 0x4a7bf5
push eax
mov ecx, esi
call fcn.004ab330
push ebp
push 1
push ebp
push ebp
push edi
mov ecx, esi
call fcn.004aa400
jmp 0x4a8682
push ebp
lea ecx, [esp + 0x40]
push 1
push ecx
push ebp
push edi
mov ecx, esi
call fcn.004aa400
jmp 0x4a8682
mov eax, dword [esi + 0x74]
push ebp
lea edx, [esp + 0x40]
push 1
push edx
push ebp
push eax
mov ecx, esi
call fcn.004aa400
jmp 0x4a8682
mov edx, dword [esi + 0x74]
push ebp
lea ecx, [esp + 0x40]
push 1
push ecx
push SysReAllocString
push edx
mov ecx, esi
call fcn.004aa400
jmp 0x4a8682
mov eax, dword [esi + 0x78]
cmp eax, ebp
jle 0x4a7c62
mov edx, dword [esi + 0x74]
push ebp
lea ecx, [esp + 0x40]
push 1
dec eax
push ecx
push eax
push edx
mov ecx, esi
call fcn.004aa400
jmp 0x4a8682
mov eax, dword [esi + 0x74]
cmp eax, ebp
jle 0x4a8682
push ebp
lea ecx, [esp + 0x40]
push 1
push ecx
dec eax
push SysReAllocString
push eax
mov ecx, esi
call fcn.004aa400
jmp 0x4a8682
mov edx, dword [0x5ada84]
mov dword [esp + 0x90], edx
lea eax, [esp + 0x3c]
lea ecx, [esp + 0x94]
push eax
mov eax, dword [esi + 0x78]
push ecx
mov ecx, dword [esi + 0x74]
lea edx, [esp + 0x98]
push ebp
push edx
push eax
push ecx
mov ecx, esi
mov byte [esp + 0x98], 6
call fcn.0049af40
cmp eax, ebp
je 0x4a7d64
mov eax, dword [esi + 0x80]
mov ecx, dword [esp + 0x94]
cmp eax, ecx
jg 0x4a7d53
cmp edi, 0x101003c
jne 0x4a7cfc
lea ecx, [esp + 0x90]
mov byte [esp + 0x80], 3
call fcn.0052801f
jmp 0x4a8682
mov eax, dword [esi + 0x78]
cmp eax, ebp
jle 0x4a7d27
push ebp
lea edx, [esp + 0x40]
push 1
dec eax
push edx
push eax
mov eax, dword [esi + 0x74]
mov ecx, esi
push eax
call fcn.004aa400
lea ecx, [esp + 0x3c]
push 1
push ecx
push ebp
push SysReAllocString
jmp 0x4a7d5d
mov eax, dword [esi + 0x74]
cmp eax, ebp
jle 0x4a7d64
push ebp
lea edx, [esp + 0x40]
push 1
push edx
dec eax
push SysReAllocString
push eax
mov ecx, esi
call fcn.004aa400
lea eax, [esp + 0x3c]
push 1
push eax
push ebp
push SysReAllocString
jmp 0x4a7d5d
lea ecx, [esp + 0x3c]
push 1
push ecx
dec eax
push ebp
push eax
mov ecx, esi
call fcn.0049b320
lea ecx, [esp + 0x90]
mov byte [esp + 0x80], 3
call fcn.0052801f
jmp 0x4a8682
mov edx, dword [0x5ada84]
mov dword [esp + 0x90], edx
mov edx, dword [esi + 0x78]
lea eax, [esp + 0x3c]
push eax
mov eax, dword [esi + 0x74]
push ebp
lea ecx, [esp + 0x98]
push ebp
push ecx
push edx
push eax
mov ecx, esi
mov byte [esp + 0x98], 7
call fcn.0049af40
cmp eax, ebp
je 0x4a7e80
mov ecx, dword [esp + 0x90]
mov eax, dword [esi + 0x80]
mov ecx, dword [ecx - 8]
cmp eax, ecx
jne 0x4a7e70
cmp dword [esp + 0x88], 0x101003d
jne 0x4a7df6
lea ecx, [esp + 0x90]
mov byte [esp + 0x80], 3
call fcn.0052801f
jmp 0x4a8682
mov eax, dword [esi + 0x74]
push ebp
push ebp
push ebp
push ebp
push ebp
push ebp
lea edx, [esp + 0xac]
push ebp
push edx
push eax
mov ecx, esi
mov dword [esp + 0xb8], ebp
call fcn.00483210
mov ecx, dword [esp + 0x94]
mov eax, dword [esi + 0x78]
dec ecx
cmp eax, ecx
jge 0x4a7e45
push ebp
lea edx, [esp + 0x40]
push 1
inc eax
push edx
push eax
mov eax, dword [esi + 0x74]
mov ecx, esi
push eax
call fcn.004aa400
lea ecx, [esp + 0x3c]
push ebp
push ecx
push ebp
push ebp
jmp 0x4a7e79
mov edi, dword [esi + 0x74]
mov ecx, esi
call fcn.004b06c0
dec eax
cmp edi, eax
jge 0x4a7e80
push ebp
lea edx, [esp + 0x40]
push 1
push edx
inc edi
push ebp
push edi
mov ecx, esi
call fcn.004aa400
lea eax, [esp + 0x3c]
push ebp
push eax
push ebp
push ebp
jmp 0x4a7e79
lea ecx, [esp + 0x3c]
push ebp
push ecx
inc eax
push ebp
push eax
mov ecx, esi
call fcn.0049b320
lea ecx, [esp + 0x90]
mov byte [esp + 0x80], 3
call fcn.0052801f
jmp 0x4a8682
lea edx, [esp + 0x3c]
push 1
push edx
push ebp
push ebp
mov ecx, esi
call fcn.0049b320
jmp 0x4a8682
lea eax, [esp + 0x3c]
push 1
push eax
push ebp
push SysReAllocString
mov ecx, esi
call fcn.0049b320
jmp 0x4a8682
push ebp
lea ecx, [esp + 0x28]
push ebp
push ecx
mov ecx, dword [esi + 0x74]
lea edx, [esp + 0x9c]
push ebp
lea eax, [esp + 0xa4]
push edx
push eax
push ebp
push ebp
push ecx
mov ecx, esi
call fcn.00483210
cmp eax, 0xd
jne 0x4a8682
mov ecx, dword [esp + 0x94]
cmp dword [ecx + 0xcc], ebp
jne 0x4a7f08
xor edx, edx
jmp 0x4a7f0e
mov edx, dword [ecx + 0xc4]
cmp dword [ecx + 0x68], ebp
jne 0x4a7f17
xor eax, eax
jmp 0x4a7f1a
mov eax, dword [ecx + 0x60]
mov edi, dword [esp + 0x90]
mov eax, dword [eax + edi*4]
add eax, edx
push eax
call fcn.004d2100
test al, 2
je 0x4a8682
mov edx, dword [esp + 0x90]
lea ecx, [esp + 0x20]
push ebp
push ecx
mov ecx, dword [esp + 0x9c]
push ebp
push edx
call fcn.004d0170
cmp eax, 1
jne 0x4a8682
mov eax, dword [esp + 0x20]
cmp eax, 0xffffffff
je 0x4a8682
mov edx, dword [esp + 0x24]
push ebp
lea ecx, [esp + 0x40]
push 1
push ecx
add eax, edx
push ebp
push eax
mov ecx, esi
call fcn.004aa400
jmp 0x4a8682
mov ecx, dword [esi + 0x74]
push ebp
push ebp
push ebp
push ebp
push ebp
push ebp
lea eax, [esp + 0xa8]
push ebp
push eax
push ecx
mov ecx, esi
mov dword [esp + 0xb4], ebp
call fcn.00483210
mov edx, dword [esp + 0x90]
mov eax, dword [esi + 0x78]
dec edx
cmp eax, edx
jge 0x4a7fcb
mov edx, dword [esi + 0x74]
push ebp
lea ecx, [esp + 0x40]
push 1
inc eax
push ecx
push eax
push edx
mov ecx, esi
call fcn.004aa400
jmp 0x4a8682
mov edi, dword [esi + 0x74]
mov ecx, esi
call fcn.004b06c0
dec eax
cmp edi, eax
jge 0x4a8682
push ebp
lea eax, [esp + 0x40]
push 1
push eax
inc edi
push ebp
push edi
mov ecx, esi
call fcn.004aa400
jmp 0x4a8682
mov ecx, dword [0x5ada84]
mov dword [esp + 0x90], ecx
lea edx, [esp + 0x3c]
lea eax, [esp + 0x24]
push edx
mov edx, dword [esi + 0x78]
push eax
mov eax, dword [esi + 0x74]
lea ecx, [esp + 0x98]
push ebp
push ecx
push edx
push eax
mov ecx, esi
mov byte [esp + 0x98], 8
call fcn.0049af40
cmp eax, ebp
je 0x4a82f0
cmp edi, 0x101003a
je 0x4a8044
cmp edi, 0x1010040
jne 0x4a80bf
mov ecx, dword [esi + 0x80]
mov eax, dword [esp + 0x24]
cmp ecx, eax
jg 0x4a80bf
cmp edi, 0x1010040
je 0x4a8188
mov eax, dword [esi + 0x78]
cmp eax, ebp
jle 0x4a808c
push ebp
lea edx, [esp + 0x40]
push 1
dec eax
push edx
push eax
mov eax, dword [esi + 0x74]
mov ecx, esi
push eax
call fcn.004aa400
lea ecx, [esp + 0x3c]
push 1
push ecx
push ebp
push SysReAllocString
jmp 0x4a8181
mov eax, dword [esi + 0x74]
cmp eax, ebp
jle 0x4a8188
push ebp
lea edx, [esp + 0x40]
push 1
push edx
dec eax
push SysReAllocString
push eax
mov ecx, esi
call fcn.004aa400
lea eax, [esp + 0x3c]
push 1
push eax
push ebp
push SysReAllocString
jmp 0x4a8181
mov edi, dword [esp + 0x90]
mov ecx, dword [esi + 0x80]
mov eax, dword [edi - 8]
cmp ecx, eax
mov ecx, dword [esp + 0x88]
jl 0x4a81a7
cmp ecx, 0x1010041
jne 0x4a80ff
lea ecx, [esp + 0x90]
mov byte [esp + 0x80], 3
call fcn.0052801f
jmp 0x4a8682
cmp ecx, 0x101003b
jne 0x4a81a1
mov edx, dword [esi + 0x74]
push ebp
push ebp
push ebp
push ebp
push ebp
push ebp
lea ecx, [esp + 0xac]
push ebp
push ecx
push edx
mov ecx, esi
mov dword [esp + 0xb8], ebp
call fcn.00483210
mov ecx, dword [esp + 0x94]
mov eax, dword [esi + 0x78]
dec ecx
cmp eax, ecx
jge 0x4a8158
push ebp
lea edx, [esp + 0x40]
push 1
inc eax
push edx
push eax
mov eax, dword [esi + 0x74]
mov ecx, esi
push eax
call fcn.004aa400
lea ecx, [esp + 0x3c]
push ebp
push ecx
jmp 0x4a817f
mov edi, dword [esi + 0x74]
mov ecx, esi
call fcn.004b06c0
dec eax
cmp edi, eax
jge 0x4a8188
push ebp
lea edx, [esp + 0x40]
push 1
push edx
inc edi
push ebp
push edi
mov ecx, esi
call fcn.004aa400
lea eax, [esp + 0x3c]
push ebp
push eax
push ebp
push ebp
mov ecx, esi
call fcn.0049b320
lea ecx, [esp + 0x90]
mov byte [esp + 0x80], 3
call fcn.0052801f
jmp 0x4a8682
mov dword [esi + 0x80], eax
cmp ecx, 0x1010040
jne 0x4a81b6
mov ecx, 0x101003a
jmp 0x4a81c3
cmp ecx, 0x1010041
jne 0x4a81ca
mov ecx, 0x101003b
mov dword [esp + 0x88], ecx
mov edx, dword [esi + 0x80]
cmp ecx, 0x101003a
mov al, 0x20
jne 0x4a81e9
cmp edx, ebp
jle 0x4a81e9
cmp byte [edi + edx - 1], al
jne 0x4a81e9
dec edx
cmp edx, ebp
jg 0x4a81de
xor eax, eax
or ebp, 0xffffffff
add edx, edi
mov ecx, edi
mov dword [esp + 0x94], edx
cmp dword [esp + 0x88], 0x101003a
jne 0x4a8213
cmp ecx, dword [esp + 0x94]
jae 0x4a82ae
mov dl, byte [ecx]
test dl, dl
je 0x4a82aa
cmp dl, 0x41
jl 0x4a8227
cmp dl, 0x5a
jle 0x4a826d
cmp dl, 0x61
jl 0x4a8231
cmp dl, 0x7a
jle 0x4a826d
cmp dl, 0x30
jl 0x4a823b
cmp dl, 0x39
jle 0x4a826d
cmp dl, 0x5f
je 0x4a826d
cmp dl, 0xb0
jae 0x4a826d
cmp ebp, 2
je 0x4a8293
mov ebx, dword [esp + 0x88]
mov eax, ecx
sub eax, edi
cmp ebx, 0x101003b
mov ebp, 2
jne 0x4a8293
cmp ecx, dword [esp + 0x94]
ja 0x4a82ae
jmp 0x4a8293
cmp ebp, 1
je 0x4a8293
mov ebx, dword [esp + 0x88]
mov eax, ecx
sub eax, edi
cmp ebx, 0x101003b
mov ebp, 1
jne 0x4a8293
cmp ecx, dword [esp + 0x94]
ja 0x4a82ae
test dl, 0x80
je 0x4a82a4
mov dl, byte [ecx + 1]
inc ecx
test dl, dl
je 0x4a81f9
inc ecx
jmp 0x4a81f9
sub ecx, edi
mov eax, ecx
cmp byte [eax + edi], 0x2e
jne 0x4a82bb
mov edx, eax
jmp 0x4a81e9
cmp dword [esp + 0x88], 0x101003b
jne 0x4a82dd
mov cl, byte [eax + edi]
test cl, cl
je 0x4a82dd
cmp cl, 0x20
jne 0x4a82dd
mov cl, byte [eax + edi + 1]
inc eax
test cl, cl
jne 0x4a82cf
lea ecx, [esp + 0x3c]
push 1
push ecx
push 0
push eax
mov ecx, esi
call fcn.0049b320
xor ebp, ebp
lea ecx, [esp + 0x90]
mov byte [esp + 0x80], 3
call fcn.0052801f
jmp 0x4a8682
push ebp
push ebp
push ebp
push 0x1020003
jmp 0x4a831b
push ebp
push ebp
push ebp
push 0x1020004
mov ecx, esi
call fcn.004a9ea0
push 1
push ebp
push 1
mov ecx, esi
call fcn.004aae30
jmp 0x4a8694
push ebp
lea edx, [esp + 0x40]
push 1
push edx
push ebp
push 1
mov ecx, esi
call fcn.0049a670
push eax
mov ecx, esi
call fcn.004aa400
jmp 0x4a8694
push ebp
lea eax, [esp + 0x40]
push 1
push eax
push ebp
mov ecx, esi
call fcn.004aad60
push eax
mov ecx, esi
call fcn.004aa400
jmp 0x4a8694
lea ecx, [esp + 0x3c]
push ebp
push ecx
push 0xffffffffffffffff
mov ecx, esi
call fcn.004a9660
jmp 0x4a8682
lea edx, [esp + 0x3c]
push ebp
push edx
push 1
mov ecx, esi
call fcn.004a9660
jmp 0x4a8682
lea ecx, [esp + 0x64]
call fcn.00477df0
lea eax, [esp + 0x64]
mov ecx, esi
push eax
push 1
mov byte [esp + 0x88], 9
call fcn.0049a670
dec eax
mov ecx, esi
push eax
call fcn.0049e5b0
mov edi, eax
cmp edi, 0xffffffff
je 0x4a8454
lea ecx, [esp + 0x24]
lea edx, [esp + 0x3c]
push ecx
push edx
mov ecx, esi
call fcn.0049b580
test eax, eax
je 0x4a8443
push 1
push edi
push 1
mov ecx, esi
call fcn.0049a6c0
push 1
mov ecx, esi
call fcn.004a9d80
cmp eax, ebp
je 0x4a8400
push edi
mov ecx, eax
call fcn.004ab330
mov eax, dword [esi + 0x1c]
push ebp
push ebp
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
mov ecx, dword [esi + 0x1c]
push ecx
call dword [sym.imp.USER32.dll_UpdateWindow]
push ebp
push ebp
lea edx, [esp + 0x2c]
push ebp
push edx
mov ecx, esi
call fcn.004a5120
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 3
mov dword [esp + 0x64], 0x55f890
call fcn.00477ff0
jmp 0x4a868d
push ebp
push ebp
push ebp
push 0x1020007
mov ecx, esi
call fcn.004a9ea0
jmp 0x4a8425
push ebp
push 1
push ebp
push ebp
push ebp
mov ecx, esi
call fcn.004aa400
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 3
mov dword [esp + 0x64], 0x55f890
call fcn.00477ff0
jmp 0x4a8682
lea ecx, [esp + 0x64]
call fcn.00477df0
lea eax, [esp + 0x64]
mov ecx, esi
push eax
mov byte [esp + 0x84], 0xa
call fcn.0049e360
mov edi, eax
cmp edi, 0xffffffff
je 0x4a8531
lea ecx, [esp + 0x24]
lea edx, [esp + 0x3c]
push ecx
push edx
mov ecx, esi
call fcn.0049b580
test eax, eax
je 0x4a8504
push 1
push edi
push 1
mov ecx, esi
call fcn.0049a6c0
push 1
mov ecx, esi
call fcn.004a9d80
cmp eax, ebp
je 0x4a84dd
push edi
mov ecx, eax
call fcn.004ab330
mov eax, dword [esi + 0x1c]
push ebp
push ebp
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
mov ecx, dword [esi + 0x1c]
push ecx
call dword [sym.imp.USER32.dll_UpdateWindow]
push ebp
push ebp
lea edx, [esp + 0x2c]
push ebp
push edx
mov ecx, esi
call fcn.004a5120
jmp 0x4a8513
push ebp
push ebp
push ebp
push 0x1020008
mov ecx, esi
call fcn.004a9ea0
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 3
mov dword [esp + 0x64], 0x55f890
call fcn.00477ff0
jmp 0x4a868d
push ebp
lea eax, [esp + 0x40]
push 1
push eax
push ebp
mov ecx, esi
call fcn.004b06c0
dec eax
mov ecx, esi
push eax
call fcn.004aa400
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 3
mov dword [esp + 0x64], 0x55f890
call fcn.00477ff0
jmp 0x4a8682
lea ecx, [esp + 0x3c]
push ecx
push ebp
push 0xffffffffffffffff
mov ecx, esi
call fcn.004aef60
jmp 0x4a8682
lea edx, [esp + 0x3c]
mov ecx, esi
push edx
push 0xffffffffffffffff
call fcn.004af660
jmp 0x4a8682
mov ecx, dword [esp + 0x90]
lea eax, [esp + 0x3c]
push eax
push ebp
push ecx
mov ecx, esi
call fcn.004aef60
jmp 0x4a8682
mov eax, dword [esp + 0x90]
lea edx, [esp + 0x3c]
push edx
push eax
mov ecx, esi
call fcn.004af660
jmp 0x4a8682
mov edx, dword [esp + 0x90]
xor ecx, ecx
cmp edi, 0x1010030
push 1
sete cl
push ecx
push edx
mov ecx, esi
call fcn.004a8c60
jmp 0x4a8682
push edi
mov ecx, esi
call fcn.004a89b0
jmp 0x4a8682
lea eax, [esp + 0x3c]
mov ecx, esi
push eax
push 1
push 0xffffffffffffffff
call fcn.004aef60
jmp 0x4a8682
mov ecx, esi
call fcn.004af2e0
jmp 0x4a8682
mov ecx, esi
call fcn.004af380
jmp 0x4a8682
mov eax, dword [esi + 0x74]
push ebp
push ebp
push ebp
lea ecx, [esp + 0xa0]
push ebp
lea edx, [esp + 0xa0]
push ecx
push edx
push ebp
push ebp
push eax
mov ecx, esi
call fcn.00483210
cmp eax, 0xd
jne 0x4a8682
mov ecx, dword [esp + 0x90]
cmp dword [ecx + 0xcc], ebp
jne 0x4a864e
xor edx, edx
jmp 0x4a8654
mov edx, dword [ecx + 0xc4]
cmp dword [ecx + 0x68], ebp
jne 0x4a865d
xor eax, eax
jmp 0x4a8660
mov eax, dword [ecx + 0x60]
mov edi, dword [esp + 0x94]
mov edi, dword [eax + edi*4]
add edi, edx
push edi
call fcn.004d2100
test al, 1
je 0x4a8682
push ebp
inc edi
push 1
push edi
mov ecx, esi
call fcn.004b06e0
push 1
push ebp
push ebp
mov ecx, esi
call fcn.004aae30
mov edi, dword [esp + 0x88]
cmp dword [esp + 0x14], 1
jne 0x4a87aa
cmp edi, 0x101001b
je 0x4a86e5
mov eax, dword [esp + 0x88]
cmp eax, 0x101001d
je 0x4a86e5
cmp eax, 0x101001f
je 0x4a86e5
cmp eax, 0x1010021
je 0x4a86e5
mov edi, dword [esi + 0x74]
mov ecx, esi
call fcn.004b06c0
dec eax
cmp edi, eax
jne 0x4a86e5
cmp dword [esp + 0x88], 0x101001c
jne 0x4a874a
cmp dword [esp + 0x18], edi
je 0x4a874a
mov edi, dword [esi + 0x74]
mov eax, dword [esi + 0x90]
cmp edi, eax
jne 0x4a8747
mov ecx, dword [esi + 0x78]
mov eax, dword [esi + 0x94]
cmp ecx, eax
jne 0x4a8742
mov edx, dword [esi + 0xa0]
push ebp
push ebp
lea eax, [esp + 0x44]
push ebp
push eax
mov ecx, esi
mov dword [esi + 0x7c], edx
call fcn.00481820
push 1
lea ecx, [esp + 0x40]
push ebp
push ecx
mov ecx, esi
call fcn.004ab3b0
mov eax, dword [esi + 0x78]
mov ecx, dword [esi + 0x74]
lea edx, [esp + 0x3c]
push 1
push edx
push ebp
push eax
push ecx
mov ecx, esi
call fcn.004a54d0
jmp 0x4a8824
or edi, 0xffffffff
jmp 0x4a874a
jle 0x4a874a
dec edi
lea ecx, [esi + 0xb8]
mov dword [ecx + 0x10], ebp
mov eax, dword [esi + 0xb4]
cmp eax, ebp
jne 0x4a8761
xor edx, edx
jmp 0x4a8767
mov edx, dword [esi + 0xac]
push eax
push edx
call fcn.004786b0
cmp edi, 0xffffffff
je 0x4a8782
mov edx, dword [esi + 0x90]
push edi
push edx
mov ecx, esi
call fcn.004ab6b0
mov eax, dword [esi + 0x98]
mov ecx, dword [esi + 0x90]
push ebp
push eax
push edi
push ecx
mov ecx, esi
call fcn.004a5610
mov edx, dword [esi + 0x74]
mov dword [esi + 0x98], edi
mov dword [esi + 0x9c], edx
jmp 0x4a87cb
cmp dword [esp + 0x10], ebp
je 0x4a87cb
mov ecx, dword [esi + 0x78]
mov edx, dword [esi + 0x74]
mov eax, dword [esp + 0x2c]
push 1
push ebp
push 1
push ecx
push edx
mov ecx, esi
mov dword [esi + 0x7c], eax
call fcn.004a54d0
mov edi, dword [esp + 0x18]
mov eax, dword [esi + 0x74]
cmp eax, edi
jne 0x4a87e1
mov eax, dword [esi + 0x78]
mov ecx, dword [esp + 0x1c]
cmp eax, ecx
je 0x4a8824
mov eax, dword [esi + 0x5c]
cmp dword [eax + 0x2d8], 1
je 0x4a8824
cmp dword [eax + 0x2d4], ebp
jne 0x4a8824
cmp dword [0x5b1cbc], 0xffffffff
jne 0x4a880d
lea ecx, [esp + 0x50]
push ecx
mov ecx, 0x5b1cb8
call fcn.004eec80
mov eax, dword [esp + 0x1c]
mov edx, dword [esi]
push eax
push edi
push 0xf
push 0x202006e
mov ecx, esi
call dword [edx + 0xe0]
mov esi, 0x55f890
lea ecx, [esp + 0x50]
mov byte [esp + 0x80], 0
mov dword [esp + 0x50], esi
call fcn.00477ff0
mov dword [esp + 0x80], 0xffffffff
mov dword [esp + 0x3c], esi
lea ecx, [esp + 0x3c]
call fcn.00477ff0
mov eax, 1
jmp 0x4a8891
mov esi, 0x55f890
lea ecx, [esp + 0x50]
mov byte [esp + 0x80], 0
mov dword [esp + 0x50], esi
call fcn.00477ff0
lea ecx, [esp + 0x3c]
mov dword [esp + 0x80], 0xffffffff
mov dword [esp + 0x3c], esi
call fcn.00477ff0
xor eax, eax
mov ecx, dword [esp + 0x78]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x74
ret 0x10