Function at 0x100628d0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push esi
sub esp, 0xc
mov eax, dword [0x100c60f0]
mov edx, dword [0x100c6128]
mov ecx, dword fs:[0x2c]
mov ecx, dword [ecx + edx*4]
mov ecx, dword [ecx + 4]
cmp eax, ecx
jle 0x10062cb5
lea eax, [0x100c60f0]
mov dword [esp], eax
call fcn.1006d03d
cmp dword [0x100c60f0], 0xffffffff
jne 0x10062cb5
mov eax, dword [0x100c4f60]
xor eax, dword [0x100c4f64]
mov ecx, 0xbd426f6
xor edx, edx
div ecx
and eax, 0xd30be6d8
imul eax, eax, 0xfdb20e05
and eax, 0xcba89d97
imul eax, eax, 0xc859bca5
mov ecx, 0xc5db6bdf
xor edx, edx
div ecx
xor eax, 0xfa2f060b
mov ecx, 0xf666a5ce
xor edx, edx
div ecx
add eax, 0x4c0279d7
and eax, 0x9f0a85be
mov ecx, 0x46591dcc
xor edx, edx
div ecx
or eax, 0x263b4808
mov ecx, 0x22969d65
xor edx, edx
div ecx
sub eax, 0xf85c205e
or eax, 0xea95468
or eax, 0x41fe5b41
xor eax, 0x794b7ce7
sub eax, 0x5b844153
or eax, 0x832b5e5e
imul eax, eax, 0xafba12f8
and eax, 0x7c7ae843
and eax, 0x5889b4a8
and eax, 0x2629ad9b
xor eax, 0x1c1a101c
xor eax, 0x597dc272
imul eax, eax, 0xf047b71d
xor eax, 0xb060a844
xor eax, 0xced3ef10
add eax, 0xbf963398
xor eax, 0xa6f162bc
or eax, 0x22479ef0
or eax, 0x4382cfbc
xor eax, 0x93ce274e
and eax, 0xc9169974
sub eax, 0xde5b7fbb
sub eax, 0x9ea6b095
or eax, 0x18ae0592
or eax, 0xad23a335
mov ecx, 0xafb97a08
xor edx, edx
div ecx
or eax, 0x8cda70f8
or eax, 0x5d269bbe
mov ecx, 0x4e449b57
xor edx, edx
div ecx
and eax, 0xd51578dd
mov ecx, 0x658b3f45
xor edx, edx
div ecx
add eax, 0xdf7d1def
imul eax, eax, 0xb9639e64
and eax, 0xff2061f7
and eax, 0x6a58db74
or eax, 0xba4ed15
add eax, 0x3fb8d5e2
xor eax, 0x21af0ac0
and eax, 0x22d74bc1
mov ecx, 0xb28d8f16
xor edx, edx
div ecx
add eax, 0x1c86482e
or eax, 0xc2be7da0
sub eax, 0x31a164b9
imul eax, eax, 0x8e47242c
or eax, 0xc5a5dd0c
mov ecx, 0x7888ecac
xor edx, edx
div ecx
imul eax, eax, 0xafc6f05b
and eax, 0x7e8b7cdb
mov ecx, 0xfc032004
xor edx, edx
div ecx
sub eax, 0xd6e03d13
add eax, 0x86da7b17
imul eax, eax, 0x3ceade3e
or eax, 0x99ff7aa
mov ecx, 0x4b10863e
xor edx, edx
div ecx
and eax, 0x1f6e5b93
xor eax, 0x19bc4c72
and eax, 0xe63323e3
or eax, 0x81194976
or eax, 0xb020c824
cmp eax, 0x95d33d9b
jb 0x10063277
mov eax, dword [0x100c4f68]
xor edx, edx
div dword [0x100c4f6c]
or eax, 0x805bb6b9
or eax, 0xc8c246e2
add eax, 0xf18197a
mov ecx, 0xfcea199e
xor edx, edx
div ecx
xor eax, 0xa4185251
and eax, 0x7c22cc22
or eax, 0x9edd8b6a
xor eax, 0xa540afe5
sub eax, 0xe55822b8
add eax, 0x2a1faea0
imul eax, eax, 0x2adf612e
sub eax, 0x1aab4d0
or eax, 0x8946c382
imul eax, eax, 0xe9652af9
imul eax, eax, 0x4e12ac1
add eax, 0xae56f656
mov ecx, 0x2c1739d1
xor edx, edx
div ecx
or eax, 0x60430265
imul eax, eax, 0xe74fed55
and eax, 0x16e7bcc4
or eax, 0x9b52d107
mov ecx, 0xbbd39c8
xor edx, edx
div ecx
add eax, 0xbf505afe
xor eax, 0x27228396
or eax, 0x50211bdc
sub eax, 0x94ef3aa7
imul eax, eax, 0x6d7e9bf5
mov ecx, 0x88da46ed
xor edx, edx
div ecx
imul eax, eax, 0xdadbfaa8
mov ecx, 0xd50ce436
xor edx, edx
div ecx
imul eax, eax, 0x576cf5ed
or eax, 0x94733270
imul eax, eax, 0x6c7bcda6
add eax, 0x683919fc
sub eax, 0x379ac789
imul eax, eax, 0x2ade2f7d
or eax, 0x1c779673
or eax, 0xb73dfc6c
sub eax, 0x1c0dd2f1
imul eax, eax, 0x6b2c36b2
add eax, 0xcf642073
and eax, 0x1f0ad25c
add eax, 0xd5eea7f0
and eax, 0x2f51501
or eax, 0xdef995c3
sub eax, 0x138637fc
sub eax, 0x33b69668
or eax, 0x3084958b
and eax, 0x3e175aa8
or eax, 0x2176e162
imul eax, eax, 0xc68e7566
imul eax, eax, 0x2061d613
mov ecx, 0x7a303b51
xor edx, edx
div ecx
and eax, 0xe39d7dcb
imul eax, eax, 0xba8c236c
sub eax, 0xb10e645d
imul eax, eax, 0xb7d3a440
imul eax, eax, 0x6dc5f469
and eax, 0x1c538315
sub eax, 0x40c2638c
and eax, 0xb10dc9d3
add eax, 0xc06ba653
xor eax, 0x4e77ba9b
add eax, 0x670805b1
or eax, 0x90931bae
imul eax, eax, 0x83fcac42
add eax, 0x65a58aae
and eax, 0x954cdac7
add eax, 0xc2270c5d
or eax, 0x5e61142
or eax, 0xf3a3ac0f
mov ecx, 0x90aff84c
xor edx, edx
div ecx
mov dword [ebp - 8], eax
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea ecx, [0x100c60e4]
mov dword [esp], eax
call fcn.100632c0
sub esp, 4
lea eax, [0x10063c00]
mov dword [esp], eax
call fcn.1006d2b2
lea eax, [0x100c60f0]
mov dword [esp], eax
call fcn.1006d0b7
mov eax, dword [ebp - 8]
cmp eax, 0xfbc806e8
je 0x10062acb
jmp 0x10062cb5
mov eax, dword [0x100c4f70]
or eax, dword [0x100c4f74]
imul eax, eax, 0xf4844174
mov ecx, 0x84d27b14
xor edx, edx
div ecx
mov ecx, 0x99b76216
xor edx, edx
div ecx
mov ecx, 0x938d7472
xor edx, edx
div ecx
imul eax, eax, 0xbe52a078
imul eax, eax, 0x35febdb4
and eax, 0x9f35f15d
mov ecx, 0x58636b57
xor edx, edx
div ecx
or eax, 0x1d5508dd
or eax, 0xae2b582b
xor eax, 0x3020c41e
mov ecx, 0x3e9aa82c
xor edx, edx
div ecx
add eax, 0x936a7978
and eax, 0x61e5d218
xor eax, 0xfad88bc3
add eax, 0x41897da1
imul eax, eax, 0xd61500dc
xor eax, 0xfaea14be
mov ecx, 0xb542b3bd
xor edx, edx
div ecx
imul eax, eax, 0x8f0066f9
sub eax, 0xdd870faf
imul eax, eax, 0x41311a9a
and eax, 0xee05056d
sub eax, 0x89595cab
mov ecx, 0x330f3fb9
xor edx, edx
div ecx
add eax, 0xeedaf04
imul eax, eax, 0x7a7597aa
add eax, 0xcd419585
imul eax, eax, 0x909e3827
mov ecx, 0x3de59fff
xor edx, edx
div ecx
or eax, 0x5c57d847
mov ecx, 0xa34a8374
xor edx, edx
div ecx
mov ecx, 0x137a38a2
xor edx, edx
div ecx
or eax, 0xcf069ad9
mov ecx, 0x6b08b80b
xor edx, edx
div ecx
sub eax, 0x421f6ce1
or eax, 0x2045ed02
mov ecx, 0x56c5e3e9
xor edx, edx
div ecx
and eax, 0x290369c
or eax, 0x5f069626
add eax, 0x9b94f4f8
and eax, 0x9ee7c588
imul eax, eax, 0x39cffb42
and eax, 0x724d2847
and eax, 0x75d1409d
imul eax, eax, 0x56f71bda
add eax, 0x2002e7f1
or eax, 0x889fcd7f
add eax, 0x77a42996
mov ecx, 0x966cc29f
xor edx, edx
div ecx
add eax, 0x99f4023c
imul eax, eax, 0x25a12e74
add eax, 0x2ba3524a
add eax, 0xce3a346f
mov ecx, 0xec81b36
xor edx, edx
div ecx
sub eax, 0xc370b75f
xor eax, 0xc30f0955
xor eax, 0x38eac8b4
add eax, 0x94cdec1e
imul eax, eax, 0xa1845a19
sub eax, 0x4ea9c437
xor eax, 0xe7cda13f
or eax, 0xe777d5ec
xor eax, 0xb5d591e
and eax, 0x8aab8386
imul eax, eax, 0x26ceb43a
or eax, 0xde80cec9
add eax, 0xaa05596f
sub eax, 0xace6a311
or eax, 0xb268456f
sub eax, 0xd8723bce
xor eax, 0xf71e5f3b
cmp eax, 0x56021481
je 0x100632af
mov eax, 0xfffdfff5
mov ecx, dword [0x100c6110]
mov esi, dword [0x100c6128]
mov edx, dword fs:[0x2c]
mov edx, dword [edx + esi*4]
mov edx, dword [edx + 4]
cmp ecx, edx
setg cl
mov byte [ebp - 9], cl
cmp eax, 0x9869ce89
jb 0x100632af
mov al, byte [ebp - 9]
test al, 1
jne 0x10062ebc
jmp 0x10062f0a
lea eax, [0x100c6110]
mov dword [esp], eax
call fcn.1006d03d
cmp dword [0x100c6110], 0xffffffff
jne 0x10062f0a
lea ecx, [0x100c60f4]
lea eax, [0x100c60e4]
mov dword [esp], eax
call fcn.10063fa0
sub esp, 4
lea eax, [0x10064230]
mov dword [esp], eax
call fcn.1006d2b2
lea eax, [0x100c6110]
mov dword [esp], eax
call fcn.1006d0b7
mov eax, dword [0x100c4f80]
xor eax, dword [0x100c4f84]
mov ecx, 0x5c2aeb8b
xor edx, edx
div ecx
and eax, 0xc40bb2d
or eax, 0x963ad666
xor eax, 0xe4c4757f
add eax, 0xf343bee9
add eax, 0xd3cf06c6
add eax, 0xd907949c
or eax, 0xc237389f
mov ecx, 0xf5850c28
xor edx, edx
div ecx
sub eax, 0x5db9dcad
xor eax, 0x65b409f6
mov ecx, 0xc353a4ad
xor edx, edx
div ecx
or eax, 0x1cd8cf39
mov ecx, 0x1516c2cd
xor edx, edx
div ecx
and eax, 0xf5054e29
or eax, 0x15461a1a
imul eax, eax, 0xa0172684
mov ecx, 0x57004a77
xor edx, edx
div ecx
xor eax, 0x517b34c3
add eax, 0x7102e03
or eax, 0x853a4420
xor eax, 0xbc5b4fee
imul eax, eax, 0x58b93e4a
sub eax, 0xad1b4fe6
add eax, 0x1e3907d9
xor eax, 0xa08dd05c
xor eax, 0xb4576eb1
xor eax, 0xdb34c97d
or eax, 0x64a55396
xor eax, 0xf941d8f0
or eax, 0xd1da29e2
and eax, 0x96aca0f4
or eax, 0xf59a7649
sub eax, 0x61ddb984
imul eax, eax, 0x83e3e512
add eax, 0xa390b274
sub eax, 0xc158eedf
imul eax, eax, 0x5d58476e
and eax, 0x9302c2f4
xor eax, 0xca8b752f
sub eax, 0xdc292d06
sub eax, 0x8e3adfe4
imul eax, eax, 0x56146411
or eax, 0x787b4c8a
add eax, 0x5b5d9077
imul eax, eax, 0x124c14a0
sub eax, 0x220d6c20
mov ecx, 0x103716b2
xor edx, edx
div ecx
xor eax, 0x9610b0e7
sub eax, 0xf7754eaa
add eax, 0x1750c03d
sub eax, 0xfaa271bc
sub eax, 0xce39e91d
xor eax, 0xb93e9161
or eax, 0xe4987938
and eax, 0xa5945ec4
mov ecx, 0x109990fd
xor edx, edx
div ecx
or eax, 0x3f5030bc
mov ecx, 0x736b7a77
xor edx, edx
div ecx
xor eax, 0x1b9db6aa
imul eax, eax, 0x21823956
and eax, 0xefab0810
xor eax, 0xf3c70d12
mov ecx, 0x584b3607
xor edx, edx
div ecx
xor eax, 0x24b76031
imul eax, eax, 0x1d4138e5
or eax, 0x9bbfea17
and eax, 0x88afc5ae
sub eax, 0x6f2445f9
or eax, 0x70231088
imul eax, eax, 0x45ec894
and eax, 0x4a918299
cmp eax, 0xe16c7b8
jae 0x100632b4
mov eax, dword [0x100c4f88]
sub eax, dword [0x100c4f8c]
or eax, 0x485e4d40
xor eax, 0xda656d4d
sub eax, 0xa8dcc52f
mov ecx, 0x5adc2217
xor edx, edx
div ecx
imul eax, eax, 0x29df95c9
or eax, 0x59fa3450
or eax, 0xd0e1216
or eax, 0x9df21eee
sub eax, 0x2b60cbf9
sub eax, 0x319257ad
add eax, 0x650b04c2
imul eax, eax, 0x53e7daba
sub eax, 0xa60a916b
or eax, 0x56b2f673
mov ecx, 0xc268b148
xor edx, edx
div ecx
mov ecx, 0xe8c65ec3
xor edx, edx
div ecx
and eax, 0x91d47c84
mov ecx, 0xaeafc6d5
xor edx, edx
div ecx
and eax, 0x8b0893fd
or eax, 0x9c4bb0ef
and eax, 0xd2380aa6
and eax, 0x87309fda
mov ecx, 0x6c0a480
xor edx, edx
div ecx
xor eax, 0x67b43be9
xor eax, 0x1a490fed
add eax, 0xeac18358
mov ecx, 0xd82ee17d
xor edx, edx
div ecx
imul eax, eax, 0x5031c93e
mov ecx, 0x7d55a6c1
xor edx, edx
div ecx
mov ecx, 0x7f972ae8
xor edx, edx
div ecx
sub eax, 0xb6f56662
and eax, 0x3031299b
imul eax, eax, 0x604424a5
imul eax, eax, 0x3ab55a62
imul eax, eax, 0xd152d51d
mov ecx, 0xab6d029c
xor edx, edx
div ecx
and eax, 0x9c95857d
add eax, 0x3ad1f349
xor eax, 0x592e29b4
xor eax, 0x4b04cdbe
sub eax, 0x9c30bb9d
sub eax, 0xe42f5277
and eax, 0x962b148
imul eax, eax, 0xff05c60f
add eax, 0xfc3dbe8e
add eax, 0xe3b7b84f
and eax, 0x77994a5e
sub eax, 0xfa53db5b
xor eax, 0xce2295b8
mov ecx, 0x491e3fb6
xor edx, edx
div ecx
mov ecx, 0x2cf6a80
xor edx, edx
div ecx
or eax, 0x3b684dad
or eax, 0x9dc06685
mov ecx, 0x58fedba2
xor edx, edx
div ecx
or eax, 0x400dd35d
sub eax, 0x9c1c83b4
and eax, 0x2080119a
xor eax, 0x5e92932c
imul eax, eax, 0xae548c3b
sub eax, 0xb0d71871
add eax, 0x3d3ca594
sub eax, 0x33d29785
add eax, 0xbdfbe5fc
add eax, 0x546d54d
xor eax, 0x5c5ee975
xor eax, 0x1413d574
and eax, 0x71cab92c
xor eax, 0x84c5d93f
add eax, 0x89c14faf
xor eax, 0xd0de852f
or eax, 0x3a77467b
add eax, 0xa66e13f4
cmp eax, 0xc47bd53e
jae 0x100632b4
lea eax, [0x100c60f4]
add esp, 0xc
pop esi
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea ecx, [0x100c60e4]
mov dword [esp], eax
call fcn.100632c0
sub esp, 4
lea eax, [0x10063c00]
mov dword [esp], eax
call fcn.1006d2b2
lea eax, [0x100c60f0]
mov dword [esp], eax
call fcn.1006d0b7
jmp 0x10062acb
jmp 0x10062e78
jmp 0x100630b5