Function at 0x47c5a0
Capabilities:
Inspect section memory permissions
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x542e30
mov eax, dword fs:[0]
push eax
sub esp, 0x1c4
mov eax, dword [0x592174]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ecx, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x1b8], ecx
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x134], 0
mov dword [ebp - 4], 0
lea eax, [ecx + 0x30]
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.updater_type
call fcn.0041c4e0
mov byte [ebp - 4], 0
lea eax, [ebp - 0x150]
push eax
lea ecx, [ebp - 0x184]
mov dword [ebp - 0x130], 1
call fcn.0047ea60
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47c659
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47c660
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x184]
call fcn.004185b0
mov edi, 1
mov dword [ebp - 0x130], edi
and edi, 0xfffffffe
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov dword [ebp - 4], 6
lea ecx, [ebp - 0x14c]
mov eax, dword [ebp - 0x1b8]
add eax, 0x48
mov dword [ebp - 0x150], str.updater_auto
push eax
call fcn.0041c4e0
mov byte [ebp - 4], 6
lea eax, [ebp - 0x150]
or edi, 2
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47c70c
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47c713
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xfffffffd
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov eax, dword [ebp - 0x1b8]
cmp dword [eax + 0x70], 0
je 0x47c804
mov dword [ebp - 4], 0xc
add eax, 0x60
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], 0x5699d0
call fcn.0041c4e0
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x150]
or edi, 4
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47c7be
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47c7c5
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xfffffffb
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov eax, dword [ebp - 0x1b8]
cmp dword [eax + 0x88], 0
je 0x47c8b3
mov dword [ebp - 4], 0x12
add eax, 0x78
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.main_exe_ver
call fcn.0041c4e0
mov byte [ebp - 4], 0x12
lea eax, [ebp - 0x150]
or edi, 8
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47c873
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47c87a
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xfffffff7
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0x10], 0
je 0x47c968
mov dword [ebp - 4], 0x18
lea ecx, [ebp - 0x14c]
push eax
mov dword [ebp - 0x150], str.main_ver
call fcn.0041c4e0
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x150]
or edi, 0x10
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47c922
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47c929
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xffffffef
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0x28], 0
je 0x47ca1a
mov dword [ebp - 4], 0x1e
add eax, 0x18
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.build_ver
call fcn.0041c4e0
mov byte [ebp - 4], 0x1e
lea eax, [ebp - 0x150]
or edi, 0x20
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47c9d4
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47c9db
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xffffffdf
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0x40], 0
je 0x47cacc
mov dword [ebp - 4], 0x24
add eax, 0x30
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.action_type
call fcn.0041c4e0
mov byte [ebp - 4], 0x24
lea eax, [ebp - 0x150]
or edi, 0x40
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47ca86
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47ca8d
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xffffffbf
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0x58], 0
je 0x47cb84
mov dword [ebp - 4], 0x2a
add eax, 0x48
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.special_ver
call fcn.0041c4e0
mov byte [ebp - 4], 0x2a
lea eax, [ebp - 0x150]
or edi, 0x80
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47cb3b
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47cb42
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xffffff7f
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0x70], 0
je 0x47cc3c
mov dword [ebp - 4], 0x30
add eax, 0x60
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.special_id
call fcn.0041c4e0
mov byte [ebp - 4], 0x30
lea eax, [ebp - 0x150]
or edi, 0x100
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47cbf3
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47cbfa
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xfffffeff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0x88], 0
je 0x47ccf7
mov dword [ebp - 4], 0x36
add eax, 0x78
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.os_ver
call fcn.0041c4e0
mov byte [ebp - 4], 0x36
lea eax, [ebp - 0x150]
or edi, 0x200
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47ccae
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47ccb5
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xfffffdff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0xa0], 0
je 0x47cdae
mov dword [ebp - 4], 0x3c
add eax, 0x90
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.sp_ver
call fcn.0041c4e0
mov byte [ebp - 4], 0x3c
lea eax, [ebp - 0x150]
or edi, 0x400
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47cd6b
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47cd72
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0x3c
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xfffffbff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
push 0x118
lea eax, [ebp - 0x128]
mov dword [ebp - 0x12c], 0x11c
push 0
push eax
call fcn.0050d580
lea eax, [ebp - 0x12c]
push eax
call fcn.0041a630
add esp, 0x10
test al, al
je 0x47d740
mov eax, dword [ebp - 0x128]
mov dword [ebp - 4], 0x42
push 0
push eax
lea eax, [ebp - 0x1d0]
push eax
call fcn.004176b0
or edi, 0x800
add esp, 0xc
mov dword [ebp - 0x130], edi
mov byte [ebp - 4], 0x43
xor ecx, ecx
movups xmm0, xmmword [eax]
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x138], 0
movups xmmword [ebp - 0x14c], xmm0
mov dword [ebp - 0x150], str.os_major_version
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
movq qword [ebp - 0x13c], xmm0
mov word [eax], cx
mov byte [ebp - 4], 0x43
lea eax, [ebp - 0x150]
or edi, 0x1000
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x45
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47ce9e
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47cea5
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xffffefff
mov dword [ebp - 0x130], edi
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x14c]
call fcn.004185b0
and edi, 0xfffff7ff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x1bc]
cmp edx, 8
jb 0x47cf31
mov ecx, dword [ebp - 0x1d0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47cf27
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47e15c
push edx
push ecx
call fcn.0050b342
add esp, 8
xor eax, eax
mov dword [ebp - 0x1c0], 0
mov word [ebp - 0x1d0], ax
mov eax, dword [ebp - 0x124]
mov dword [ebp - 0x1bc], 7
mov dword [ebp - 4], 0x49
push 0
push eax
lea eax, [ebp - 0x1d0]
push eax
call fcn.004176b0
or edi, 0x2000
add esp, 0xc
mov dword [ebp - 0x130], edi
mov byte [ebp - 4], 0x4a
xor ecx, ecx
movups xmm0, xmmword [eax]
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x138], 0
movups xmmword [ebp - 0x14c], xmm0
mov dword [ebp - 0x150], str.os_minor_version
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
movq qword [ebp - 0x13c], xmm0
mov word [eax], cx
mov byte [ebp - 4], 0x4a
lea eax, [ebp - 0x150]
or edi, 0x4000
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x4c
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47d00a
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47d011
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x4d
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0x4a
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xffffbfff
mov dword [ebp - 0x130], edi
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0x14c]
call fcn.004185b0
and edi, 0xffffdfff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x1bc]
cmp edx, 8
jb 0x47d09d
mov ecx, dword [ebp - 0x1d0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47d093
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47e161
push edx
push ecx
call fcn.0050b342
add esp, 8
xor eax, eax
mov dword [ebp - 0x1c0], 0
mov word [ebp - 0x1d0], ax
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x1bc], 7
mov dword [ebp - 4], 0x50
push 0
push eax
lea eax, [ebp - 0x1d0]
push eax
call fcn.004176b0
or edi, 0x8000
add esp, 0xc
mov dword [ebp - 0x130], edi
mov byte [ebp - 4], 0x51
xor ecx, ecx
movups xmm0, xmmword [eax]
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x138], 0
movups xmmword [ebp - 0x14c], xmm0
mov dword [ebp - 0x150], str.os_build_number
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
movq qword [ebp - 0x13c], xmm0
mov word [eax], cx
mov byte [ebp - 4], 0x51
lea eax, [ebp - 0x150]
or edi, 0x10000
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x53
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47d176
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47d17d
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x54
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0x51
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xfffeffff
mov dword [ebp - 0x130], edi
mov byte [ebp - 4], 0x50
lea ecx, [ebp - 0x14c]
call fcn.004185b0
and edi, 0xffff7fff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x1bc]
cmp edx, 8
jb 0x47d209
mov ecx, dword [ebp - 0x1d0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47d1ff
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47e166
push edx
push ecx
call fcn.0050b342
add esp, 8
xor eax, eax
mov dword [ebp - 0x1c0], 0
mov word [ebp - 0x1d0], ax
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x1bc], 7
mov dword [ebp - 4], 0x57
push 0
push eax
lea eax, [ebp - 0x1d0]
push eax
call fcn.004176b0
or edi, 0x20000
add esp, 0xc
mov dword [ebp - 0x130], edi
mov byte [ebp - 4], 0x58
xor ecx, ecx
movups xmm0, xmmword [eax]
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x138], 0
movups xmmword [ebp - 0x14c], xmm0
mov dword [ebp - 0x150], str.os_platform_id
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
movq qword [ebp - 0x13c], xmm0
mov word [eax], cx
mov byte [ebp - 4], 0x58
lea eax, [ebp - 0x150]
or edi, 0x40000
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x5a
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47d2e2
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47d2e9
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x5b
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xfffbffff
mov dword [ebp - 0x130], edi
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x14c]
call fcn.004185b0
and edi, 0xfffdffff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x1bc]
cmp edx, 8
jb 0x47d375
mov ecx, dword [ebp - 0x1d0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x47d36b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x47e16b
push edx
push ecx
call fcn.0050b342
add esp, 8
xor eax, eax
mov dword [ebp - 0x1c0], 0
mov word [ebp - 0x1d0], ax
movzx eax, word [ebp - 0x18]
mov dword [ebp - 0x1bc], 7
mov dword [ebp - 4], 0x5e
push 0
push eax
lea eax, [ebp - 0x1d0]
push eax
call fcn.004176b0
or edi, 0x80000
add esp, 0xc
mov dword [ebp - 0x130], edi
mov byte [ebp - 4], 0x5f
xor ecx, ecx
movups xmm0, xmmword [eax]
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x138], 0
movups xmmword [ebp - 0x14c], xmm0
mov dword [ebp - 0x150], str.os_service_pack_major
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
movq qword [ebp - 0x13c], xmm0
mov word [eax], cx
mov byte [ebp - 4], 0x5f
lea eax, [ebp - 0x150]
or edi, 0x100000
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x61
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47d44c
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47d453
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x62
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov byte [ebp - 4], 0x5f
lea ecx, [ebp - 0x184]
call fcn.004185b0
and edi, 0xffefffff
mov dword [ebp - 0x130], edi
mov byte [ebp - 4], 0x5e
lea ecx, [ebp - 0x14c]
call fcn.004185b0
and edi, 0xfff7ffff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1d0]
call fcn.004185b0
movzx eax, word [ebp - 0x16]
mov dword [ebp - 4], 0x65
push 0
push eax
lea eax, [ebp - 0x1d0]
push eax
call fcn.004176b0
or edi, 0x200000
lea ecx, [ebp - 0x170]
push eax
mov edx, str.os_service_pack_minor
mov dword [ebp - 0x130], edi
call fcn.0047eb20
add esp, 0x10
mov byte [ebp - 4], 0x66
lea ecx, [ebp - 0x1b4]
push eax
call fcn.0047ea60
mov byte [ebp - 4], 0x67
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47d517
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47d51e
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x68
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0x66
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
mov byte [ebp - 4], 0x65
lea ecx, [ebp - 0x16c]
call fcn.004185b0
and edi, 0xffdfffff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1d0]
call fcn.004185b0
movzx eax, word [ebp - 0x14]
mov dword [ebp - 4], 0x6b
push 0
push eax
lea eax, [ebp - 0x1d0]
push eax
call fcn.004176b0
or edi, 0x400000
add esp, 0xc
mov dword [ebp - 0x130], edi
mov byte [ebp - 4], 0x6c
xor ecx, ecx
movups xmm0, xmmword [eax]
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x138], 0
movups xmmword [ebp - 0x14c], xmm0
mov dword [ebp - 0x150], str.os_suite_mask
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
movq qword [ebp - 0x13c], xmm0
mov word [eax], cx
mov byte [ebp - 4], 0x6c
lea eax, [ebp - 0x150]
or edi, 0x800000
lea ecx, [ebp - 0x1b4]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x6e
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47d623
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47d62a
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x6f
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0x6c
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
and edi, 0xff7fffff
mov dword [ebp - 0x130], edi
mov byte [ebp - 4], 0x6b
lea ecx, [ebp - 0x14c]
call fcn.004185b0
and edi, 0xffbfffff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1d0]
call fcn.004185b0
movzx eax, byte [ebp - 0x12]
mov dword [ebp - 4], 0x72
push 0
push eax
lea eax, [ebp - 0x1d0]
push eax
call fcn.004176b0
or edi, 0x1000000
lea ecx, [ebp - 0x170]
push eax
mov edx, str.os_product_type
mov dword [ebp - 0x130], edi
call fcn.0047eb20
add esp, 0x10
mov byte [ebp - 4], 0x73
lea ecx, [ebp - 0x1b4]
push eax
call fcn.0047ea60
mov byte [ebp - 4], 0x74
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47d6ee
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47d6f5
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x75
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0x73
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
mov byte [ebp - 4], 0x72
lea ecx, [ebp - 0x16c]
call fcn.004185b0
and edi, 0xfeffffff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1d0]
call fcn.004185b0
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0xb8], 0
je 0x47d803
mov dword [ebp - 4], 0x78
add eax, 0xa8
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.os_bits
call fcn.0041c4e0
mov byte [ebp - 4], 0x78
lea eax, [ebp - 0x150]
or edi, 0x2000000
lea ecx, [ebp - 0x1b4]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x7a
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47d7ba
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47d7c1
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x7b
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0x78
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
and edi, 0xfdffffff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0xd0], 0
je 0x47d8c0
mov dword [ebp - 4], 0x7e
add eax, 0xc0
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.local_acp
call fcn.0041c4e0
mov byte [ebp - 4], 0x7e
lea eax, [ebp - 0x150]
or edi, 0x4000000
lea ecx, [ebp - 0x1b4]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x80
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47d877
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47d87e
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x81
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0x7e
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
and edi, 0xfbffffff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0xe8], 0
je 0x47d97d
mov dword [ebp - 4], 0x84
add eax, 0xd8
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.install_days
call fcn.0041c4e0
mov byte [ebp - 4], 0x84
lea eax, [ebp - 0x150]
or edi, 0x8000000
lea ecx, [ebp - 0x1b4]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x86
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47d934
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47d93b
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x87
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0x84
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
and edi, 0xf7ffffff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0x100], 0
je 0x47da3a
mov dword [ebp - 4], 0x8a
add eax, 0xf0
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.active_days
call fcn.0041c4e0
mov byte [ebp - 4], 0x8a
lea eax, [ebp - 0x150]
or edi, 0x10000000
lea ecx, [ebp - 0x1b4]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x8c
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47d9f1
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47d9f8
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x8d
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0x8a
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
and edi, 0xefffffff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0x130], 0
je 0x47daee
mov dword [ebp - 4], 0x90
add eax, 0x120
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.last_file_flag
call fcn.0041c4e0
mov byte [ebp - 4], 0x90
lea eax, [ebp - 0x150]
or edi, 0x20000000
lea ecx, [ebp - 0x1b4]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x92
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47daae
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47dab5
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x93
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0x90
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
and edi, 0xdfffffff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
jmp 0x47db61
push str.last_file_flag
lea ecx, [ebp - 0x184]
call fcn.00418550
mov dword [ebp - 4], 0x96
lea ecx, [ebp - 0x16c]
push 0x569410
call fcn.00418550
mov dword [ebp - 4], 0x98
lea ecx, [ebp - 0x184]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47db3b
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47db42
mov ecx, esi
call fcn.0046c7a0
mov dword [ebp - 4], 0x99
lea ecx, [ebp - 0x16c]
call fcn.004185b0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x184]
call fcn.004185b0
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0x118], 0
je 0x47dc29
mov dword [ebp - 4], 0x9b
add eax, 0x108
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.mem_size
call fcn.0041c4e0
mov byte [ebp - 4], 0x9b
lea eax, [ebp - 0x150]
or edi, 0x40000000
lea ecx, [ebp - 0x1b4]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0x9d
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47dbe0
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47dbe7
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0x9e
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0x9b
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
and edi, 0xbfffffff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0x148], 0
je 0x47dce0
mov dword [ebp - 4], 0xa1
add eax, 0x138
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.uuid
call fcn.0041c4e0
mov byte [ebp - 4], 0xa1
lea eax, [ebp - 0x150]
or edi, 0x80000000
lea ecx, [ebp - 0x1b4]
push eax
mov dword [ebp - 0x130], edi
call fcn.0047ea60
mov byte [ebp - 4], 0xa3
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47dc9d
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47dca4
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0xa4
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0xa1
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
and edi, 0x7fffffff
mov dword [ebp - 0x130], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov edi, dword [ebp - 0x154]
cmp dword [edi + 0x160], 0
je 0x47dda4
mov dword [ebp - 4], 0xa7
lea eax, [edi + 0x150]
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], 0x56a528
call fcn.0041c4e0
mov byte [ebp - 4], 0xa7
lea eax, [ebp - 0x150]
push eax
lea ecx, [ebp - 0x1b4]
mov dword [ebp - 0x134], 1
call fcn.0047ea60
mov byte [ebp - 4], 0xa9
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47dd59
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47dd60
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0xaa
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0xa7
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
mov eax, 1
mov dword [ebp - 0x134], eax
and eax, 0xfffffffe
mov dword [ebp - 0x134], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
cmp dword [edi + 0x178], 0
je 0x47de52
mov dword [ebp - 4], 0xad
lea eax, [edi + 0x168]
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.competitors
call fcn.0041c4e0
mov byte [ebp - 4], 0xad
lea eax, [ebp - 0x150]
or dword [ebp - 0x134], 2
lea ecx, [ebp - 0x1b4]
push eax
call fcn.0047ea60
mov byte [ebp - 4], 0xaf
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47de14
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47de1b
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0xb0
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0xad
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
and dword [ebp - 0x134], 0xfffffffd
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
cmp dword [edi + 0x190], 0
je 0x47df00
mov dword [ebp - 4], 0xb3
lea eax, [edi + 0x180]
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.has_uac
call fcn.0041c4e0
mov byte [ebp - 4], 0xb3
lea eax, [ebp - 0x150]
or dword [ebp - 0x134], 4
lea ecx, [ebp - 0x1b4]
push eax
call fcn.0047ea60
mov byte [ebp - 4], 0xb5
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47dec2
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47dec9
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0xb6
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0xb3
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
and dword [ebp - 0x134], 0xfffffffb
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
cmp dword [edi + 0x220], 0
je 0x47dfae
mov dword [ebp - 4], 0xb9
lea eax, [edi + 0x210]
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.is_admin
call fcn.0041c4e0
mov byte [ebp - 4], 0xb9
lea eax, [ebp - 0x150]
or dword [ebp - 0x134], 8
lea ecx, [ebp - 0x1b4]
push eax
call fcn.0047ea60
mov byte [ebp - 4], 0xbb
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47df70
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47df77
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0xbc
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0xb9
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
and dword [ebp - 0x134], 0xfffffff7
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
cmp dword [edi + 0x1f0], 0
je 0x47e05c
mov dword [ebp - 4], 0xbf
lea eax, [edi + 0x1e0]
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.net_bar
call fcn.0041c4e0
mov byte [ebp - 4], 0xbf
lea eax, [ebp - 0x150]
or dword [ebp - 0x134], 0x10
lea ecx, [ebp - 0x1b4]
push eax
call fcn.0047ea60
mov byte [ebp - 4], 0xc1
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47e01e
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47e025
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0xc2
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0xbf
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
and dword [ebp - 0x134], 0xffffffef
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
cmp dword [edi + 0x208], 0
je 0x47e114
mov dword [ebp - 4], 0xc5
lea eax, [edi + 0x1f8]
push eax
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x150], str.domain
call fcn.0041c4e0
mov byte [ebp - 4], 0xc5
lea eax, [ebp - 0x150]
mov edi, dword [ebp - 0x134]
lea ecx, [ebp - 0x1b4]
or edi, 0x20
push eax
mov dword [ebp - 0x134], edi
call fcn.0047ea60
mov byte [ebp - 4], 0xc7
lea ecx, [ebp - 0x1b4]
mov eax, dword [esi + 4]
push ecx
push eax
cmp dword [esi + 8], eax
je 0x47e0d4
push esi
call fcn.00457900
add esp, 0xc
add dword [esi + 4], 0x30
jmp 0x47e0db
mov ecx, esi
call fcn.0046c7a0
mov byte [ebp - 4], 0xc8
lea ecx, [ebp - 0x19c]
call fcn.004185b0
mov byte [ebp - 4], 0xc5
lea ecx, [ebp - 0x1b4]
call fcn.004185b0
and edi, 0xffffffdf
mov dword [ebp - 0x134], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.004185b0
mov ecx, dword [ebp - 0x1b8]
mov eax, dword [ecx + 0x90]
cmp eax, dword [ecx + 0x94]
je 0x47e13f
push dword [ebp - 0x1b8]
push dword [ecx + 0x94]
mov ecx, esi
push eax
push dword [esi + 4]
call fcn.0047ec80
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0050b067
mov esp, ebp
pop ebp
ret 0xc
call fcn.0050f749
call fcn.0050f749
call fcn.0050f749
call fcn.0050f749
int3