Function at 0x4255c0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x582760
mov eax, dword fs:[0]
push eax
push ebx
push esi
mov eax, dword [0x5e6990]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
lea ecx, [esi + 0x118c]
mov dword [ebp - 4], 0x3d
call fcn.0046c4de
lea ecx, [esi + 0x1118]
mov byte [ebp - 4], 0x3c
call fcn.0046c633
lea ecx, [esi + 0x10a4]
mov byte [ebp - 4], 0x3b
call fcn.004655fc
lea ecx, [esi + 0x1030]
mov byte [ebp - 4], 0x3a
call fcn.004655fc
lea ecx, [esi + 0xfbc]
mov byte [ebp - 4], 0x39
call fcn.004655fc
lea ecx, [esi + 0xf48]
mov byte [ebp - 4], 0x38
call fcn.00465862
mov byte [ebp - 4], 0x37
lea ecx, [esi + 0xed4]
call fcn.00465862
lea ecx, [esi + 0xe60]
mov byte [ebp - 4], 0x36
call fcn.00465651
lea ecx, [esi + 0xdec]
mov byte [ebp - 4], 0x35
call fcn.00465651
lea ecx, [esi + 0xd78]
mov byte [ebp - 4], 0x34
call fcn.00465651
lea ecx, [esi + 0xd04]
mov byte [ebp - 4], 0x33
call fcn.00465651
lea ecx, [esi + 0xc90]
mov byte [ebp - 4], 0x32
call fcn.004655fc
lea ecx, [esi + 0xc1c]
mov byte [ebp - 4], 0x31
call fcn.004655fc
lea ecx, [esi + 0xba8]
mov byte [ebp - 4], 0x30
call fcn.004657b2
lea ecx, [esi + 0xb34]
mov byte [ebp - 4], 0x2f
call fcn.004657b2
lea ecx, [esi + 0xac0]
mov byte [ebp - 4], 0x2e
call fcn.00465862
lea ecx, [esi + 0xa4c]
mov byte [ebp - 4], 0x2d
call fcn.00465862
lea ecx, [esi + 0x9d4]
mov byte [ebp - 4], 0x2c
call fcn.00465651
lea ecx, [esi + 0x960]
mov byte [ebp - 4], 0x2b
call fcn.004655fc
lea ecx, [esi + 0x8ec]
mov byte [ebp - 4], 0x2a
call fcn.004657b2
lea ecx, [esi + 0x878]
mov byte [ebp - 4], 0x29
call fcn.004657b2
mov byte [ebp - 4], 0x28
mov eax, dword [esi + 0x870]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x42574b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x27
mov eax, dword [esi + 0x86c]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425771
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x26
mov eax, dword [esi + 0x868]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425797
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x25
mov eax, dword [esi + 0x864]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4257bd
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x24
mov eax, dword [esi + 0x860]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4257e3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x23
mov eax, dword [esi + 0x85c]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425809
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esi + 0x7e4]
mov byte [ebp - 4], 0x22
call fcn.00465651
lea ecx, [esi + 0x770]
mov byte [ebp - 4], 0x21
call fcn.00465651
lea ecx, [esi + 0x6fc]
mov byte [ebp - 4], 0x20
call fcn.004657b2
lea ecx, [esi + 0x688]
mov byte [ebp - 4], 0x1f
call fcn.004657b2
lea ecx, [esi + 0x614]
mov byte [ebp - 4], 0x1e
call fcn.00465862
lea ecx, [esi + 0x5a0]
mov byte [ebp - 4], 0x1d
call fcn.004657b2
lea ecx, [esi + 0x52c]
mov byte [ebp - 4], 0x1c
call fcn.00465651
mov byte [ebp - 4], 0x1b
mov eax, dword [esi + 0x524]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425898
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [esi + 0x520]
push ecx
mov dword [esi + 0x50c], 0x5b7a40
call dword [sym.imp.USER32.dll_UnregisterDeviceNotification]
lea ecx, [esi + 0x44c]
mov byte [ebp - 4], 0x19
call fcn.00470ed6
push fcn.00469095
push 3
push 0x14
lea edx, [esi + 0x3f8]
push edx
mov byte [ebp - 4], 0x18
call fcn.0055aaa2
push fcn.00402f30
push 3
push 4
lea eax, [esi + 0x3b0]
push eax
mov byte [ebp - 4], 0x17
call fcn.0055aaa2
push fcn.00402f30
push 3
push 4
lea ecx, [esi + 0x3a4]
push ecx
mov byte [ebp - 4], 0x16
call fcn.0055aaa2
push fcn.00402f30
push 3
push 4
lea edx, [esi + 0x398]
push edx
mov byte [ebp - 4], 0x15
call fcn.0055aaa2
mov byte [ebp - 4], 0x14
mov eax, dword [esi + 0x390]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425948
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x13
mov eax, dword [esi + 0x38c]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x42596e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x12
mov eax, dword [esi + 0x388]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425994
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x11
mov eax, dword [esi + 0x384]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4259ba
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x10
mov eax, dword [esi + 0x380]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4259e0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xf
mov eax, dword [esi + 0x37c]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425a06
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xe
mov eax, dword [esi + 0x378]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425a2c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xd
mov eax, dword [esi + 0x374]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425a52
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xc
mov eax, dword [esi + 0x370]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425a78
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xb
mov eax, dword [esi + 0x36c]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425a9e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xa
mov eax, dword [esi + 0x368]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425ac4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 9
mov eax, dword [esi + 0x364]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425aea
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 8
mov eax, dword [esi + 0x360]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425b10
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 7
mov eax, dword [esi + 0x35c]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425b36
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 6
mov eax, dword [esi + 0x34c]
sub eax, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x425b5c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esi + 0x1b0]
mov byte [ebp - 4], 5
call fcn.0043c260
mov eax, dword [esi + 0x194]
test eax, eax
je 0x425b7e
push eax
call fcn.0045c706
add esp, 4
lea ecx, [esi + 0x11c]
mov dword [esi + 0x194], 0
mov dword [esi + 0x198], 0
mov dword [esi + 0x19c], 0
mov byte [ebp - 4], 3
mov dword [ecx], vtable.CMessageBoxEx.0
call fcn.0046181c
lea ebx, [esi + 0x10c]
call fcn.00425cd0
mov eax, dword [esi + 0xfc]
xor ebx, ebx
cmp eax, ebx
je 0x425bd1
push eax
call fcn.0045c706
add esp, 4
push 0x425c20
push 3
push 0x18
lea ecx, [esi + 0xa8]
push ecx
mov dword [esi + 0xfc], ebx
mov dword [esi + 0x100], ebx
mov dword [esi + 0x104], ebx
mov byte [ebp - 4], bl
call fcn.0055aaa2
mov ecx, esi
mov dword [ebp - 4], 0xffffffff
call fcn.004659f4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4