Function at 0x100db880
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push esi
sub esp, 0x20
mov dword [ebp - 0xc], ecx
mov eax, dword [ebp + 8]
mov dword [ebp - 8], eax
mov eax, dword [0x1014d288]
add eax, dword [0x1014d28c]
add eax, 0xf3f245e9
imul eax, eax, 0xfb3ad8b7
and eax, 0x3cb90422
imul eax, eax, 0x365d4802
imul eax, eax, 0xe5645d4b
xor eax, 0xa9335738
and eax, 0x98642f16
mov ecx, 0xfe5d983a
xor edx, edx
div ecx
xor eax, 0x9501851a
sub eax, 0x74c06cec
or eax, 0x884f22a7
or eax, 0x8260c93b
and eax, 0x24bbdb9d
and eax, 0xf5197aa1
imul eax, eax, 0x1f0fbe19
and eax, 0x436489c3
and eax, 0x46a494e8
xor eax, 0xf1ede0aa
mov ecx, 0x7eaeb0ed
xor edx, edx
div ecx
add eax, 0x6b9a762c
sub eax, 0x7e2058f5
imul eax, eax, 0x35d41b66
mov ecx, 0x33cf16b3
xor edx, edx
div ecx
add eax, 0x92ae8c4b
and eax, 0x21a9bcfb
sub eax, 0x127a417d
and eax, 0x57ba3483
mov ecx, 0x673cbfdc
xor edx, edx
div ecx
xor eax, 0xe11df046
add eax, 0x79040b8a
and eax, 0xdb22280
xor eax, 0x63b736b0
and eax, 0xc6fe81db
cmp eax, 0xc0c29207
jae 0x100dbfcb
mov eax, dword [0x1014d290]
add eax, dword [0x1014d294]
and eax, 0x4f87451e
imul eax, eax, 0x58814e05
imul eax, eax, 0x2cc19a5d
or eax, 0xa842b4ad
or eax, 0xd1521a73
xor eax, 0x42605314
xor eax, 0x1fb39b1d
and eax, 0xb8eb43a8
mov ecx, 0x3f6e0bfd
xor edx, edx
div ecx
xor eax, 0xdea3376e
mov ecx, 0xc3c26a62
xor edx, edx
div ecx
or eax, 0xc41511a7
xor eax, 0xee521861
add eax, 0x1d465a67
mov ecx, 0x2fc4d747
xor edx, edx
div ecx
xor eax, 0x35ec7408
and eax, 0xd8839240
sub eax, 0x62c25646
mov ecx, 0x79f05545
xor edx, edx
div ecx
xor eax, 0xdc583aef
sub eax, 0x2414a93e
imul eax, eax, 0xda6091d8
or eax, 0xc76aea44
add eax, 0xeb20db8f
add eax, 0x5f461051
imul eax, eax, 0xa8fce142
add eax, 0xe5f562a4
and eax, 0xf553eed
imul eax, eax, 0x33107dd1
sub eax, 0xc431c093
sub eax, 0xed859e57
sub eax, 0xf401b403
or eax, 0x804b9f72
cmp eax, 0xe0636553
ja 0x100db960
mov eax, dword [0x1014d298]
or eax, dword [0x1014d29c]
or eax, 0x7547006
xor eax, 0x49107d1d
or eax, 0xcd2b76ea
add eax, 0xc2b69f0a
sub eax, 0x23fad587
xor eax, 0xdbfd32fc
xor eax, 0xe3e7de5d
mov ecx, 0x2b7814bf
xor edx, edx
div ecx
or eax, 0x689ad5d5
add eax, 0x3fe3a9c1
mov ecx, 0x7565b851
xor edx, edx
div ecx
add eax, 0xc34dbd8b
and eax, 0x560d9d27
mov ecx, 0x9b4d4138
xor edx, edx
div ecx
xor eax, 0x44c0a90f
or eax, 0x922c2704
or eax, 0xeaad40cd
xor eax, 0xe846f54c
add eax, 0x27ba6de7
mov ecx, 0x4643e184
xor edx, edx
div ecx
sub eax, 0x6ff23e9c
or eax, 0x2ebde480
mov ecx, 0x66cff221
xor edx, edx
div ecx
add eax, 0x634cf939
sub eax, 0xca3d450
or eax, 0xeee8f024
mov ecx, 0xcc421c5d
xor edx, edx
div ecx
and eax, 0xfd634bd
xor eax, 0xe4697a5c
or eax, 0x4b9c25d1
imul eax, eax, 0xee5b00cb
xor eax, 0x44c6618a
imul eax, eax, 0xbde41727
cmp eax, 0x994f341
jb 0x100dbea2
mov eax, dword [0x1014d2a0]
sub eax, dword [0x1014d2a4]
mov ecx, 0x33084d6c
xor edx, edx
div ecx
xor eax, 0xc9a76552
imul eax, eax, 0xab96b0e7
add eax, 0x2a61fec6
add eax, 0x58c902f8
imul eax, eax, 0xa8246c3b
and eax, 0xd39934a1
sub eax, 0xc61431f9
xor eax, 0xa855f84e
mov ecx, 0xd81242fd
xor edx, edx
div ecx
or eax, 0x180eec40
imul eax, eax, 0x5906b62
sub eax, 0x5497cfc
imul eax, eax, 0x761e1ba0
add eax, 0x300f1dfc
mov ecx, 0xb8cbaf31
xor edx, edx
div ecx
xor eax, 0xd069c009
and eax, 0x47a73264
mov ecx, 0xc5a11c53
xor edx, edx
div ecx
and eax, 0x9f26a53e
sub eax, 0xaf6e53ce
imul eax, eax, 0x8d25cedb
and eax, 0xf11433fc
or eax, 0xd9e4091e
xor eax, 0x51557334
sub eax, 0xc886ed3f
add eax, 0x1bc6caef
or eax, 0x567fb910
mov ecx, 0x153b9af1
xor edx, edx
div ecx
mov ecx, 0x57a63607
xor edx, edx
div ecx
xor eax, 0x8601ab5c
add eax, 0xafc62a5e
add eax, 0xf264ed3
cmp eax, 0x77577838
je 0x100dbfd0
mov edx, dword [ebp - 0xc]
mov esi, dword [ebp - 8]
mov eax, 0xb6cae30a
mov dword [ebp - 0x10], eax
push eax
mov eax, esp
push eax
mov ecx, esp
mov dword [eax], esi
mov dword [ecx], edx
mov ecx, dword [ecx]
mov dword [ebp - 0x14], ecx
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.100dc040
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
lea edx, vtable.std::system_error.0
mov dword [ecx], edx
cmp eax, 0xacc9d1f1
jbe 0x100dbbdd
mov eax, dword [0x1014d2b0]
sub eax, dword [0x1014d2b4]
sub eax, 0x6387d04c
add eax, 0x140a30e2
and eax, 0x395d346
imul eax, eax, 0x4a63b2cb
and eax, 0x47dda4bb
or eax, 0x726299f3
imul eax, eax, 0xfdbb1113
imul eax, eax, 0xac94fb8c
sub eax, 0xc991cb54
or eax, 0x3cc2d06
and eax, 0xb433e189
mov ecx, 0xa516b16c
xor edx, edx
div ecx
or eax, 0xc56eb7fd
and eax, 0x40103650
and eax, 0xadf191bf
xor eax, 0x6ca90c8f
xor eax, 0xf0dad161
imul eax, eax, 0xc848ba73
imul eax, eax, 0x66a1fe6a
or eax, 0x208b2f98
sub eax, 0xd81af4c
mov ecx, 0x3a45a824
xor edx, edx
div ecx
imul eax, eax, 0x73cd94b
sub eax, 0x1246919b
xor eax, 0x6055b840
mov ecx, 0xc9545d6e
xor edx, edx
div ecx
add eax, 0x5ad2d7e8
add eax, 0x79c9f93d
mov ecx, 0xae4ec48f
xor edx, edx
div ecx
xor eax, 0xc9361125
or eax, 0x78622264
sub eax, 0x1f23e8f1
mov ecx, 0xe5183fb9
xor edx, edx
div ecx
cmp eax, 0xaba20014
ja 0x100dbea2
mov eax, dword [0x1014d2b8]
or eax, dword [0x1014d2bc]
imul eax, eax, 0x4f8a4a8e
or eax, 0x6a9a24fa
imul eax, eax, 0x76acdd7c
and eax, 0xf0df6922
mov ecx, 0x93dd4a83
xor edx, edx
div ecx
and eax, 0x11758ec0
xor eax, 0x5731cd9f
xor eax, 0xbdc7750b
imul eax, eax, 0xff08c550
mov ecx, 0x317c688d
xor edx, edx
div ecx
imul eax, eax, 0xba111f51
imul eax, eax, 0x39808383
xor eax, 0x8e08600e
mov ecx, 0xc8577a0a
xor edx, edx
div ecx
or eax, 0xe66241f1
or eax, 0xb0c1c76
add eax, 0x325792fc
sub eax, 0xa3f3fb2f
sub eax, 0xea569c7
sub eax, 0x234fdde7
or eax, 0x2aed7788
imul eax, eax, 0x94f75a6e
mov ecx, 0x16cfea20
xor edx, edx
div ecx
sub eax, 0xeab4430d
imul eax, eax, 0x6b2309c3
and eax, 0xf7d5f70a
xor eax, 0x30600721
imul eax, eax, 0xf319fb9e
mov ecx, 0x2713949c
xor edx, edx
div ecx
add eax, 0x1c84dc53
xor eax, 0xad8a62bb
imul eax, eax, 0x491c4116
sub eax, 0x50039955
cmp eax, 0x5829936a
ja 0x100dc002
mov eax, dword [0x1014d2c0]
or eax, dword [0x1014d2c4]
or eax, 0x6ccf1d86
xor eax, 0xce73a7d8
and eax, 0xf21c0c0
xor eax, 0x2f14b61
or eax, 0x448eafff
add eax, 0x611c14bd
or eax, 0xbe0ddb24
and eax, 0xd63eb630
sub eax, 0x4ae12850
imul eax, eax, 0xf4c91a3e
xor eax, 0x72a8332
and eax, 0xda04e478
and eax, 0xb8209212
or eax, 0x90693cfc
or eax, 0x5ac3589f
add eax, 0xc98efb71
sub eax, 0xdcd56b4a
xor eax, 0xb9fbdf50
or eax, 0xd37b7b46
and eax, 0x22e7fd3e
add eax, 0x1ed4eaaf
sub eax, 0xc9b439f7
imul eax, eax, 0x88b1e554
sub eax, 0x1e7b4d16
sub eax, 0xbed41d40
mov ecx, 0xf2c7a7b8
xor edx, edx
div ecx
mov ecx, 0x1652c4c1
xor edx, edx
div ecx
xor eax, 0x651108b2
mov ecx, 0xf7cb9952
xor edx, edx
div ecx
add eax, 0x88d60ac5
sub eax, 0x2061a858
xor eax, 0x251facba
imul eax, eax, 0x35764d53
cmp eax, 0x6228dee9
je 0x100dc002
mov eax, dword [ebp - 0x14]
lea esp, [ebp - 4]
pop esi
pop ebp
ret 4
mov eax, dword [0x1014d2c8]
add eax, dword [str.JN.]
xor eax, 0xa2daae14
mov ecx, 0xe3b355ad
xor edx, edx
div ecx
mov ecx, 0x9b22456e
xor edx, edx
div ecx
mov ecx, 0x593a9108
xor edx, edx
div ecx
add eax, 0xe2ae9296
and eax, 0x68217d21
xor eax, 0xf92c685a
or eax, 0x47da6c0a
sub eax, 0x7a3e4f14
mov ecx, 0xa69b543
xor edx, edx
div ecx
imul eax, eax, 0x337bb192
add eax, 0x44ef923f
xor eax, 0x7efa8571
and eax, 0xd35fab0c
or eax, 0x32c2fea8
add eax, 0x8d655df5
xor eax, 0x685c58ad
and eax, 0xa90ddc4
mov ecx, 0xacef650
xor edx, edx
div ecx
add eax, 0x767b65d1
sub eax, 0x60720b04
or eax, 0x42801a29
xor eax, 0xc53fbd7b
xor eax, 0x1c9017df
mov ecx, 0x6190476
xor edx, edx
div ecx
mov ecx, 0x17b1473d
xor edx, edx
div ecx
sub eax, 0x705bc08c
mov ecx, 0x7d0cb76c
xor edx, edx
div ecx
or eax, 0xe2935303
or eax, 0xee42a9c
mov ecx, 0xb50f7501
xor edx, edx
div ecx
or eax, 0x75722058
imul eax, eax, 0xe936fcb9
cmp eax, 0x9555b8c
je 0x100dc007
mov edx, dword [ebp - 0xc]
mov esi, dword [ebp - 8]
mov eax, 0xec85f67b
mov dword [ebp - 0x18], eax
push eax
mov eax, esp
push eax
mov ecx, esp
mov dword [eax], esi
mov dword [ecx], edx
mov ecx, dword [ecx]
mov dword [ebp - 0x1c], ecx
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.100dc040
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
lea edx, vtable.std::system_error.0
mov dword [ecx], edx
cmp eax, 0x8197a008
jb 0x100dc007
jmp 0x100dbb05
jmp 0x100db960
mov edx, dword [ebp - 0xc]
mov esi, dword [ebp - 8]
push eax
mov eax, esp
push eax
mov ecx, esp
mov dword [eax], esi
mov dword [ecx], edx
mov ecx, dword [ecx]
mov dword [ebp - 0x20], ecx
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.100dc040
mov eax, dword [ebp - 0x20]
lea ecx, vtable.std::system_error.0
mov dword [eax], ecx
jmp 0x100dbbdd
jmp 0x100dbdcd
mov edx, dword [ebp - 0xc]
mov esi, dword [ebp - 8]
push eax
mov eax, esp
push eax
mov ecx, esp
mov dword [eax], esi
mov dword [ecx], edx
mov ecx, dword [ecx]
mov dword [ebp - 0x24], ecx
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call fcn.100dc040
mov eax, dword [ebp - 0x24]
lea ecx, vtable.std::system_error.0
mov dword [eax], ecx
jmp 0x100dbf83